కోడ్‌జిమ్ విశ్వవిద్యాలయం కోర్సులో భాగంగా మెంటర్‌తో ఉపన్యాస స్నిప్పెట్. పూర్తి కోర్సు కోసం సైన్ అప్ చేయండి.


"నమస్కారాలు, అమిగో. ఒకప్పుడు, కోడ్‌లో అక్షరాల స్ట్రింగ్‌ను వ్రాయడానికి, మీరు వాటిని డబుల్ కోట్‌లలో చుట్టాలని తెలుసుకున్నారు."

"అవును, మరియు అది మాకు అక్షరార్థాన్ని ఇస్తుంది . దీని గురించి నేను చాలా కాలం క్రితం కనుగొనలేదు."

"మా వృత్తిలో, ఇది చాలా కాలం క్రితం జరిగింది. కానీ అది ప్రస్తుతానికి సంబంధించిన అంశం కాదు. బదులుగా, స్ట్రింగ్ లిటరల్‌లో కొటేషన్ మార్కులు అవసరమైతే ఏమి చేయాలో దయచేసి నాకు చెప్పండి?"

"హ్మ్... కోట్‌లను కలిగి ఉన్న స్ట్రింగ్ — ఏది సులభం కావచ్చు. ఏదో ఒక మార్గం ఉందని నేను ఖచ్చితంగా అనుకుంటున్నాను..."

"అవును. మనం టెక్స్ట్‌ని డిస్‌ప్లే చేయాలనుకుంటున్నాం "Friends" was nominated for an "Oscar". ఎలా చేస్తాం?"

"నిజం చెప్పాలంటే, నాకు ఆలోచన లేదు, నేను ఏమీ ఆలోచించలేను."

"మీరు తర్కం ద్వారా పరిష్కారాన్ని పొందలేరు. ఏమి చేయాలో నేను మీకు చూపిస్తాను.

కోడ్ గమనికలు
String s = ""Friends" was nominated for an "Oscar"";
ఈ ఎంపిక పనిచేయదు!"

"ఈ ఐచ్ఛికం పనిచేయదు, ఎందుకంటే కంపైలర్ దీనిని పూర్తిగా భిన్నమైన కోడ్‌గా వివరిస్తుంది:

కోడ్ గమనికలు
String s = ""Friends" was nominated for an "Oscar"";
ఈ ఎంపిక పనిచేయదు!"

"కంపైలర్ కోడ్‌లో డబుల్ కోట్‌లను ఎదుర్కొన్న తర్వాత, అది స్ట్రింగ్ యొక్క ప్రారంభం వలె అనుసరించే దాన్ని లిటరల్‌గా పరిగణిస్తుంది. తదుపరి డబుల్ కొటేషన్ మార్క్ స్ట్రింగ్ లిటరల్ ముగింపును సూచిస్తుంది."

"కాబట్టి మీరు లిటరల్ లోపల డబుల్ కోట్‌లను ఎలా వ్రాస్తారు?"

"ఒక మార్గం ఉంది. దానిని తప్పించుకునే అక్షరాలు అంటారు . మీరు కొటేషన్ మార్కులను టెక్స్ట్ స్ట్రింగ్‌లో వ్రాయండి. మరియు కోట్‌ల ముందు, మీరు \ ( బ్యాక్‌స్లాష్ ) చిహ్నాన్ని జోడించండి.

"సరిగ్గా వ్రాసినప్పుడు స్ట్రింగ్ లిటరల్ ఎలా ఉంటుంది:

కోడ్ గమనికలు
String s = "\"Friends\" was nominated for an \"Oscar\"";
ఇది పని చేస్తుంది!

"కంపైలర్ ప్రతిదీ సరిగ్గా అర్థం చేసుకుంటుంది మరియు బ్యాక్‌స్లాష్ తర్వాత కొటేషన్ గుర్తును సాధారణ కొటేషన్ గుర్తుగా పరిగణించదు .

"ఇంకా, మీరు ఈ స్ట్రింగ్‌ను స్క్రీన్‌కి అవుట్‌పుట్ చేస్తే, బ్యాక్‌స్లాష్‌లతో కూడిన కోట్‌లు సరిగ్గా ప్రాసెస్ చేయబడతాయి మరియు టెక్స్ట్ ఎలాంటి బ్యాక్‌స్లాష్‌లు లేకుండా ప్రదర్శించబడుతుంది:"Friends" was nominated for an "Oscar"

"సరే, ఇది చాలా అనుకూలమైనది అని నేను చెప్పను ..."

"అయితే మీరు ఏమి చేయగలరు, అవే నియమాలు. మరొక ముఖ్యమైన అంశం. బ్యాక్‌స్లాష్‌కు ముందు ఉన్న కొటేషన్ గుర్తు ఒకే అక్షరాన్ని సూచిస్తుంది: మేము కేవలం స్లిక్ సంజ్ఞామానాన్ని ఉపయోగిస్తున్నాము, ఇది మాలోని స్ట్రింగ్ లిటరల్స్‌ను గుర్తించే కంపైలర్ సామర్థ్యంతో జోక్యం చేసుకోదు. కోడ్. మీరు వేరియబుల్‌కు కోట్‌లను కేటాయించవచ్చు char:

కోడ్ గమనికలు
char c = '\"';
\"ఒక పాత్ర, రెండు కాదు
char c = '"';
ఇది కూడా సాధ్యమే: సింగిల్ కోట్స్ లోపల డబుల్ కొటేషన్ మార్క్

అక్షరాలు తప్పించుకునేటప్పుడు సంభవించే సాధారణ పరిస్థితులు

"డబుల్ కోట్‌లతో పాటు, కంపైలర్ ప్రత్యేక పద్ధతిలో నిర్వహించే అనేక ఇతర అక్షరాలు ఉన్నాయి. ఉదాహరణకు, ఒక లైన్ బ్రేక్.

"మనం లిటరల్‌కి లైన్ బ్రేక్‌ను ఎలా జోడించాలి? దీని కోసం ప్రత్యేక కలయిక కూడా ఉంది:

\n
లైన్ బ్రేక్ క్యారెక్టర్

"మీరు స్ట్రింగ్ లిటరల్‌కి లైన్ బ్రేక్ జోడించాల్సిన అవసరం ఉంటే, మీరు కేవలం రెండు అక్షరాలను జోడించండి" \n.

ఉదాహరణ:

కోడ్ కన్సోల్ అవుట్‌పుట్
System.out.println("Best regards, \n Anonymous");
             
Best regards,
Anonymous

"ఇలాంటి మొత్తం 8 ప్రత్యేక కలయికలు ఉన్నాయి, వీటిని ఎస్కేప్ సీక్వెన్సులు అని కూడా అంటారు . అవి ఇక్కడ ఉన్నాయి:

కోడ్ వివరణ
\t ట్యాబ్ అక్షరాన్ని చొప్పించండి
\b బ్యాక్‌స్పేస్ అక్షరాన్ని చొప్పించండి
\n కొత్త లైన్ అక్షరాన్ని చొప్పించండి
\r క్యారేజ్ రిటర్న్ క్యారెక్టర్‌ను చొప్పించండి
\f పేజీ ఫీడ్ అక్షరాన్ని చొప్పించండి
\' ఒకే కొటేషన్ గుర్తును చొప్పించండి
\" డబుల్ కొటేషన్ గుర్తును చొప్పించండి
\\ బ్యాక్‌స్లాష్‌ను చొప్పించండి

"మీరు ఇప్పటికే వాటిలో రెండింటిని నాకు చూపించారు. మిగిలిన 6 అర్థం ఏమిటి?"

"ఇప్పుడే అన్నీ వివరిస్తాను.

\tఅనేది ట్యాబ్ క్యారెక్టర్

ఈ వచనం టెక్స్ట్‌లో కనిపించినప్పుడు, Tabటైప్ చేస్తున్నప్పుడు కీని నొక్కడానికి ఇది సమానం. ఇది దానిని అనుసరించే వచనాన్ని మారుస్తుంది మరియు వచనాన్ని సమలేఖనం చేయడం సాధ్యం చేస్తుంది.

ఉదాహరణ:

కోడ్ కన్సోల్ అవుట్‌పుట్
System.out.println("0\t1\t2\t3");
System.out.println("0\t10\t20\t30");
System.out.println("0\t100\t200\t300");
0       1        2        3
0       10       20       30
0       100      200      300

\bఅంటే 'ఒక అక్షరం వెనక్కి వెళ్లు'

Backspaceస్ట్రింగ్‌లోని ఈ క్రమం కీబోర్డ్‌లోని కీని నొక్కడానికి సమానం . ఇది దాని ముందు ఉన్న అక్షరాన్ని తొలగిస్తుంది:

కోడ్ కన్సోల్ అవుట్‌పుట్
System.out.println("Hello\b\b World");
Hel World

\rక్యారేజ్ రిటర్న్ క్యారెక్టర్

ఈ అక్షరం వచనాన్ని మార్చకుండా కర్సర్‌ను ప్రస్తుత పంక్తి ప్రారంభానికి తరలిస్తుంది (JDK సంస్కరణపై ఆధారపడి ఉంటుంది). తదుపరి ఏది ప్రదర్శించబడినా అది ఇప్పటికే ఉన్న స్ట్రింగ్‌ను ఓవర్‌రైట్ చేస్తుంది.

ఉదాహరణ:

కోడ్ కన్సోల్ అవుట్‌పుట్
System.out.println("Greetings\r World!"); 
World!ngs

\fఅనేది పేజీ ఫీడ్ క్యారెక్టర్

ఈ గుర్తు మొదటి డాట్ మ్యాట్రిక్స్ ప్రింటర్ల రోజుల నుండి మనకు వస్తుంది. ఈ క్రమాన్ని ప్రింటర్‌కు అవుట్‌పుట్ చేయడం వలన ప్రింటర్ కొత్త పేజీ ప్రారంభమయ్యే వరకు ఎటువంటి వచనాన్ని ముద్రించకుండా ప్రస్తుత షీట్‌ను ఫీడ్ చేస్తుంది.

ఇప్పుడు మనం దానిని పేజీ బ్రేక్ లేదా కొత్త పేజీ అని పిలుస్తాము .

\\ఒక బ్యాక్ స్లాష్

ఇక్కడ అంతా సూటిగా ఉంటుంది. మన టెక్స్ట్‌లోని అక్షరాలను తప్పించుకోవడానికి మనం బ్యాక్‌స్లాష్‌ని ఉపయోగిస్తే, స్ట్రింగ్‌లో బ్యాక్‌స్లాష్ క్యారెక్టర్‌ను ఎలా వ్రాయాలి?

ఇది చాలా సులభం: టెక్స్ట్‌కు బ్యాక్‌స్లాష్ జోడించండి — మీరు వరుసగా రెండు రాయాలి.

ఉదాహరణ:

కోడ్ కన్సోల్ అవుట్‌పుట్
System.out.println("c:\projects\my\first");
తెలియని తప్పించుకున్న పాత్రల కోసం కంపైలర్ మిమ్మల్ని కేకలు వేస్తుంది.
System.out.println("c:\\projects\\my\\first");
అది సరిగ్గా ఎలా జరుగుతుంది!

"డబుల్ స్లాష్‌లను ఉపయోగించడం అర్ధమే. కానీ నేను వెంటనే మిగతావన్నీ గుర్తుంచుకోలేకపోయాను. నేను మీ సూచనలపై ఆధారపడవలసి ఉంటుంది."

"క్రమంగా, మీకు కావలసినది మీకు గుర్తుంటుంది. చింతించకండి. మరియు అన్నిటికీ, Google ఉంది.

యూనికోడ్ ఎన్‌కోడింగ్

"స్క్రీన్‌పై ప్రదర్శించబడే ప్రతి అక్షరం నిర్దిష్ట సంఖ్యా కోడ్‌కు అనుగుణంగా ఉంటుందని మీకు ఇప్పటికే తెలుసు. ఈ కోడ్‌ల యొక్క ప్రామాణిక సెట్‌ను ఎన్‌కోడింగ్ అంటారు .

"ఒకప్పుడు, కంప్యూటర్లు కొత్తగా కనిపెట్టబడినప్పుడు, ప్రతి అక్షరాన్ని ఎన్‌కోడ్ చేయడానికి ఏడు బిట్‌లు (ఒక బైట్ కంటే తక్కువ) సరిపోయేవి. మొదటి ఎన్‌కోడింగ్‌లో 128 అక్షరాలు మాత్రమే ఉన్నాయి. ఈ ఎన్‌కోడింగ్‌ను ASCII అని పిలిచేవారు . "

"అది విచిత్రమైన పేరు."

"దీనిలో వింత ఏమీ లేదు. ఇది సంక్షిప్తీకరణ. ASCII అంటే అమెరికన్ స్టాండర్డ్ కోడ్ ఫర్ ఇన్ఫర్మేషన్ ఇంటర్‌చేంజ్ — ముద్రించదగిన అక్షరాలు మరియు కొన్ని ప్రత్యేక కోడ్‌ల కోసం ఒక ప్రామాణిక అమెరికన్ కోడ్ టేబుల్."

"ఇది 33 నాన్-ప్రింట్ కంట్రోల్ క్యారెక్టర్‌లను కలిగి ఉంటుంది (ఇది టెక్స్ట్ మరియు స్పేస్‌లు ఎలా ప్రాసెస్ చేయబడుతుందో ప్రభావితం చేస్తుంది) మరియు 95 ముద్రించదగిన అక్షరాలు, ఇందులో సంఖ్యలు, పెద్ద అక్షరం మరియు చిన్న లాటిన్ అక్షరాలు మరియు అనేక విరామ చిహ్నాలు ఉన్నాయి.

"కంప్యూటర్‌లు జనాదరణ పొందడంతో, ప్రతి దేశం దాని స్వంత ఎన్‌కోడింగ్‌ను విడుదల చేయడం ప్రారంభించింది. సాధారణంగా, వారు ASCIIని ప్రారంభ బిందువుగా తీసుకున్నారు మరియు అరుదుగా ఉపయోగించే ASCII అక్షరాలను వాటి సంబంధిత వర్ణమాల నుండి చిహ్నాలతో భర్తీ చేశారు.

"కాలక్రమేణా, ఒక ఆలోచన ఉద్భవించింది: ప్రపంచంలోని ప్రతి ఎన్‌కోడింగ్‌లోని అన్ని అక్షరాలను కలిగి ఉన్న ఒకే ఎన్‌కోడింగ్‌ను సృష్టించండి.

యూనికోడ్ ఎన్‌కోడింగ్

"అందుకే, 1993లో, యూనికోడ్ ఎన్‌కోడింగ్ సృష్టించబడింది మరియు టెక్స్ట్‌ను నిల్వ చేయడానికి ఈ ఎన్‌కోడింగ్‌ను ప్రమాణంగా ఉపయోగించిన మొదటి ప్రోగ్రామింగ్ భాషగా జావా భాష అవతరించింది. ఇప్పుడు యూనికోడ్ మొత్తం IT పరిశ్రమకు ప్రమాణంగా ఉంది.

"యూనికోడ్ ప్రమాణం అయినప్పటికీ, దీనికి అనేక ప్రాతినిధ్యాలు లేదా యూనికోడ్ పరివర్తన ఫార్మాట్‌లు (UTF) ఉన్నాయి: UTF-8, UTF-16 మరియు UTF-32, మొదలైనవి.

"Java యూనికోడ్ ఎన్‌కోడింగ్ యొక్క అధునాతన సంస్కరణను ఉపయోగిస్తుంది - UTF-16: ప్రతి అక్షరం 16 బిట్‌లలో (2 బైట్లు) ఎన్‌కోడ్ చేయబడింది. ఇది 65,536 అక్షరాల వరకు ఉంచగలదు! మీరు ఈ ఎన్‌కోడింగ్‌లో ప్రపంచంలోని ప్రతి అక్షరమాలలోని దాదాపు ప్రతి అక్షరాన్ని కనుగొనవచ్చు. "

"నేను దానిని హృదయపూర్వకంగా తెలుసుకోవలసిన అవసరం లేదని నేను ఆశిస్తున్నాను?"

"మీకు కావాలంటే, దాని కోసం వెళ్ళండి!"

"సరే, బాగానే ఉంది. నేను ఈ నియమాన్ని ఉపయోగిస్తాను: మీరు ప్రతిదీ తెలుసుకోలేరు, కానీ మీరు ప్రతిదీ Google చేయవచ్చు."

\u"హేతుబద్ధమైన విధానాన్ని అవలంబించడమే అన్నిటికంటే. కాబట్టి, మీ ప్రోగ్రామ్‌లో యూనికోడ్ అక్షరాన్ని దాని కోడ్‌ని ఉపయోగించి వ్రాయడానికి, మీరు + కోడ్‌ని హెక్సాడెసిమల్‌లో వ్రాయాలి . ఉదాహరణకు,\u00A9

కోడ్ కన్సోల్ అవుట్‌పుట్
 System.out.println("\u00A9 CodeGym");
© CodeGym

యూనికోడ్: కోడ్ పాయింట్

"640 కిలోబైట్లు ప్రతి ఒక్కరికీ సరిపోవాలి! లేదా". బిల్ గేట్స్ ఒకసారి చెప్పారు. లేదా. కనీసం ఈ కోట్ అతనికి ఆపాదించబడింది."

"హా. క్లీనింగ్ రోబోట్ మెదడును లోడ్ చేయడానికి 640 కిలోబైట్‌లు కూడా సరిపోవు."

"జీవితం కఠినమైనది, మరియు కాలక్రమేణా, UTF-16 ఎన్‌కోడింగ్ సరిపోవడం ప్రారంభమైంది. ఆసియా భాషలు చాలా ఉన్నాయని మరియు వాటిలో చాలా గ్లిఫ్‌లు ఉన్నాయని తేలింది. మరియు ఈ గ్లిఫ్‌లన్నింటినీ 2 బైట్‌లుగా ఉంచడం సాధ్యం కాదు. ."

"కాబట్టి మనం ఏమి చేయాలి?"

" మరిన్ని బైట్‌లను ఉపయోగించండి ! కానీ చార్ రకం 2 బైట్‌లు మాత్రమే మరియు దానిని 4కి మార్చడం అంత సులభం కాదు: ప్రపంచవ్యాప్తంగా బిలియన్ల కొద్దీ జావా కోడ్‌లు వ్రాయబడ్డాయి, చార్ టైప్ అకస్మాత్తుగా 4 బైట్‌లు జావాగా మారితే అది విచ్ఛిన్నమవుతుంది. యంత్రం. కాబట్టి మేము చార్ రకాన్ని మార్చలేము!

"మరొక విధానం ఉంది. పాత్రల ముందు బ్యాక్‌స్లాష్‌ని ఉంచడం ద్వారా మనం ఎలా తప్పించుకుంటామో గుర్తుంచుకోండి. ప్రాథమికంగా, మేము బహుళ అక్షరాలను ఉపయోగించి ఒకే అక్షరాన్ని ఎన్‌కోడ్ చేసాము. జావా సృష్టికర్తలు అదే విధానాన్ని ఉపయోగించాలని నిర్ణయించుకున్నారు.

"విజువల్‌గా ఒకే క్యారెక్టర్‌గా కనిపించే కొన్ని అక్షరాలు charస్ట్రింగ్‌లో రెండు సెకన్లుగా ఎన్‌కోడ్ చేయబడ్డాయి:

కోడ్ కన్సోల్ అవుట్‌పుట్
System.out.println("\uD83D\uDD0A");
🔊

"ఇప్పుడు మీ జావా ప్రోగ్రామ్ కన్సోల్‌కి ఎమోజీలను కూడా అవుట్‌పుట్ చేయగలదు 😎"

"కొంత ఆనందించడానికి నేను ఖచ్చితంగా దాన్ని ఉపయోగిస్తాను!"