JavaRush /Java блогы /Random-KK /Java тіліндегі қашу таңбалары
Oleksandr Klymenko
Деңгей
Харків

Java тіліндегі қашу таңбалары

Топта жарияланған
Бірдеңе дұрыс болмады! Бұл мақала JavaRush тобындағы лауазымға тест тапсырмасы ретінде жазылған. Және ол толыққанды дәріс ретінде жазылған. Осыған байланысты мен сізге осы постта жинақталған пайдалы білімнің сапасы мен санына кепілдік беремін. Мақалада практикалық және теориялық ақпараттан басқа, сіз білмеуіңіз мүмкін қызықты фактілер бар! Java тіліндегі қашу таңбалары - 1Сәлем Әлем! Кейіпкерлерден қашу - өте қызықты және қажетті техникалық шешім. Кейіпкерлерден қашу қажеттілігі бүкіл бағдарламалау индустриясының тарихында маңызды рөл атқарды. Бұл мақалада біз кейіпкерлерден қашу дегеніміз не, олардан қашу неліктен қажет және Java тілінде кейіпкерлерден қашу қалай жүзеге асырылатыны туралы айтатын боламыз. Мақалада кейіпкерлерден қашу тақырыбына қатысты мысалдар мен қызықты фактілер беріледі. Оқудан ләззат алыңыз! Компьютерлік жүйедегі барлық ақпарат мәтін түрінде беріледі, ол төменгі деңгейде byteтармен көрсетіледі. Біз хат немесе хабарлама жазғанда адамға түсінікті мәтін тереміз. IDE-де code жазғанда, компилятор талдай алатын мәтінді тереміз. StringJava тілінде мәтінді деректері басқару таңбаларымен – жұптастырылған тырнақшалармен ұсынылған тип ретінде көрсетуге болады .
String str = "Hello World!";
«Сәлем әлем!» мәтінімен ешқандай проблемалар туындамайды, бірақ сол мәтінді тікелей сөйлеуде бөлектеу қажет болса ше? Грамматика ережелерін қолдана отырып, «Сәлем әлем!» мәтіні түріндегі басқару таңбаларынан басқа String, тікелей сөйлеу тырнақшаларына орналастырылуы керек екені белгілі болады.
String str = "Java said, "Hello World!"";
Бұл опция жұмыс істемейді, өйткені компилятор айнымалының инициализациясы қай нүктеде аяқталатынын түсінбейді str. Осы және осыған ұқсас мәселелерді шешу үшін таңбалардан құтылу , яғни басқару таңбаларын қашып кету реті деп аталатын басқару тізбегіне өзгерту ойлап табылды . Төменде жолдарда қолдануға арналған жарамды java escape тізбектерінің тізімі берілген. \t — Tab белгісі (java тілінде – төрт бос орынның баламасы); \b— Мәтіндегі қайтаратын таңба бір қадам артқа немесе жолдағы бір таңбаны жою (backspace); \n— Жаңа жол белгісі; \r— Каретканы қайтару белгісі; \f— Бетті келесі беттің басына өткізіп жіберу; \'— Жалғыз тырнақша белгісі; \"— қос тырнақша белгісі; \\— Кері қиғаш сызық таңбасы ( \). Енді құрастырушы жазылғанды ​​оңай талдай алуы үшін сөз тіркесіміздегі тікелей сөйлеуді ерекшелеп көрейік.
String str = "Java said, \"Hello World!\"";
strОсылайша, экранда айнымалының мазмұны көрсетілсе, жазбаша мәтін компиляторға да, адамға да түсінікті болады . Біз қашып кету деген не екенін және оның не үшін қажет екенін түсіндік. Олар тіпті қос тырнақшадан құтылды! Қалған қашу ретін талдауды жалғастырайық. Жолдағы қойынды таңбасы шығу ретімен көрсетіледі \tжәне төрт бос орынға ұқсас. Дегенмен, төрт бос орыннан тұратын жолдың ұзындығы төрт таңбаның ұзындығына тең болса, онда қойынды таңбасы бар жолдың ұзындығы біреуге тең болады. Қойынды таңбасы кестелерді немесе псевдографикалық интерфейс элементтерін құру үшін жиі пайдаланылады , себебі... Бұл төрт бос орын жазуға қарағанда ыңғайлы. Төменде псевдографикалық интерфейстің мысалы берілген. Java тіліндегі қашу таңбалары - 2Барлық қашу тізбегінің ішінде таңба \bең қызықты болып табылады, өйткені ол кері пернесін басу арқылы оны өшіретін сияқты шығыс жолындағы соңғы таңбаны жоюға мүмкіндік береді .
System.out.print("2 + 2 = 5"); // Screen displays 2 + 2 = 5
System.out.print("\b");// Screen displays 2 + 2 =
System.out.print("4");// Screen displays 2 + 2 = 4
Рәміздердің ортақ тарихы \nбар \r– оларды бірге қарастырайық. Жол үзу таңбасын \nбұрын кездестірген боларсыз. Мысалы, егер әдіс println()келесі шығыс жаңа жолда болатындай ақпаратты шығарса, онда әдіс print()шығыстан кейін жол үзілімін орындамайды, бірақ шығыстың соңына таңба қоссаңыз \n, жол үзілімі орындалатын болады.
System.out.print("Next output will be on a new line\n");
System.out.println("Next output will be on a new line");
Каретканы қайтару таңбасы \rкурсорды шығыс жолының басына қайтаруға және бұрын сол жолда ештеңе болмағандай жаңа ақпаратты көрсетуге мүмкіндік береді.
System.out.print("Text to be rewritten.");//The screen displays "Text to be rewritten."
System.out.print('\r');//The screen is blank
System.out.print("New text.");//The screen displays "New text."
Шындығында, каретканы қайтару мәтінді жазу машинкаларында басып шығарған кезден басталады. Желілік беруді орындау үшін каретканы жылжытып, тұтқаны (баспа машинкасының механизмінің бөлігі) түсіру қажет болды, содан кейін желі беру орындалады. Егер тұтқа түсірілмесе, сол сызықта басып шығаруды жалғастыруға болады. Бұл біз таңбаны көрсеткенде байқаймыз \r. Осыған байланысты, бағдарламашы жол үзілімін орындағысы келгенде, ол әдеттен тыс шығыстың соңында таңбалар тізбегін орындады \r\n. Жазу машинкасының дәуірі аяқталып келе жатқанда, өздері машинкада жұмыс істемесе де, әлі де осы бірізділікті қолданатын бағдарламашылар буыны пайда болды. Олар берілген тізбекті аяқтау үшін қандай тәртіппен қажет екенін жиі ұмытып қалады - \r\nнемесе \n\r. Содан кейін олардың көмегіне сынақ сөзі келді return, онда бұл белгілердің көрсетілу реті анық көрінді. Алайда, кейінірек, Windows-тың бірінші нұсқалары үшін бағдарламалық жасақтаманы жасау кезінде, MS-DOS-тан кейін, бағдарламашылар жүйелілікті қолдануға мәжбүр болды \r\n. Енді бұл туралы алаңдамайсыз және сызықты бұзу үшін тек таңбаны пайдаланыңыз \n. Java тіліндегі қашатын таңбалар - 3Өткенге қайта оралайық, шамамен 80-ші жылдар. \fДәл сол кезде келесі беттің басына дейінгі беттің белгісі танымал болды. Ол кезде үлкен желілік принтерлер болды, олармен жұмыс істеу үшін принтер нені және қалай басып шығару керектігін қамтитын бағдарлама codeын жазу қажет болды. Мәтінді жаңа беттен бастау керек екенін көрсету үшін таңба қолданылды \f. Біздің уақытымызда бұл нышан өзінің өзектілігін әлдеқашан жоғалтты және сіз оны кездестіруіңіз екіталай. Сызықтық принтердің өлшемдері өте әсерлі. Java тіліндегі қашу таңбалары - 4Таңбалармен \’және \\бәрі қос тырнақшадан құтылумен бірдей, мақаланың басында мысал болды. Бір тырнақшадан құтылуға тура келеді, мысалы, таңба түрін бір тырнақшамен инициализациялау үшін.
char ch = '\'';
Келесі таңба шығу ретінің бөлігі болмайтынын көрсету үшін кері қиғаш сызық таңбасын алып тастаңыз.
System.out.println("\\n - line break escape sequence");
// Output: \n - line break escape sequence
Тәжірибеде жолдармен жұмыс істегенде жиі кері қиғаш сызықтардан құтылуға тура келеді:
System.out.println("It's Java string: \"C:\\Program Files\\Java\\jdk1.7.0\\bin\"");
// Output: It's Java string: "C:\Program Files\Java\jdk1.7.0\bin"
Мен бұл қашу реттілігі жолдарда (жолдың литералы) қолданылатынын атап өттім, себебі олардың қалған бөлігі сынып тұрақты тіркестерін сипаттау үшін қолданылады Patternжәне осы мақаланың тақырыбына қатысы жоқ. Мұнда сіз сыныпқа арналған барлық қашу реттерінің тізімін көре аласыз Pattern. Дегенмен, қазір олар бар пішіндегі тұрақты өрнектерді тек java-да ғана емес, сонымен қатар басқа танымал бағдарламалау тілдерінде, мысалы, РНР-де де escape тізбегін қолданбай елестету мүмкін емес екенін атап өткен жөн. Java тілінде таңбалардан қашу жолды пішімдеуде де қолданылады. Мысалы, пайыздық таңбаны көрсету үшін жол пішімін көрсеткенде, пайыз таңбасын көшіру керек - %%, әйтпесе біз қате аламыз және IDE сізге пайызды қосуды ұсынады.
System.out.printf("Milk fat percentage : %d%%", 10);
// Milk fat percentage : 10%
Осымен мақала аяқталады. Сіз кейіпкерлерден қашу және оны іс жүзінде қолдану туралы көп нәрсені білдіңіз деп үміттенемін. Таңбалардан қашу көптеген бағдарламалау тілдеріне тән. Java-да, басқа C-тәрізді тілдердегі сияқты, бұл технология бірдей дерлік жүзеге асырылады. Сондықтан осы мақаладан алған біліміңіз тек java тілінде ғана емес пайдалы болуы мүмкін. Назарларыңызға рахмет, оқуларыңызға сәттілік тілейміз!
Пікірлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION