image-ru-00-14

இளஞ்சிவப்பு முடி கொண்ட ஒரு பெண் கேபினுக்குள் நுழைந்தார். "எல்லா பெண்களுக்குமே இது போன்ற முடிதான் இருக்குமோ என்று ஆச்சரியமாக இருக்கிறது," என்று அருண் யோசித்தார்.

"வணக்கம்! என் பெயர் எலினா கேரி. நீங்கள் என்னை எல்லி என்று அழைக்கலாம். கேலக்டிக் ரஷ்ஷில் நேவிகேட்டராக உள்ளேன்."

அருண் தானே முன்வந்து "வணக்கம், எல்லி," என்றார் .

"மொத்த Java மொழியின் மிகவும் சுவாரஸ்யமான பகுதியை நான் விளக்கப் போகிறேன்: மாறிகள்."

"நான் கேட்கக் தயாராக இருக்கிறேன்! மாறிகள் என்றால் என்ன?"

"மாறிகள் என்பது தரவைச் சேமிக்கப் பயன்படுத்தப்படும் சிறப்பு உறுபொருட்கள் ஆகும். ஏதேனும் தரவு. Java-வில், அனைத்துத் தரவும் மாறிகளில் சேமிக்கப்படுகின்றன. இதற்கு மிக நெருக்கமான ஒரு ஒப்புமை 'பெட்டி'."

"பெட்டியா? என்ன வகையான பெட்டி?"

"ஏதேனும் ஒரு பழைய பெட்டி :). நீங்கள் 13 என்ற எண்ணை ஒரு காகிதத்தில் எழுதி அதை ஒரு பெட்டியில் போடுகிறீர்கள் என்று வைத்துக்கொள்வோம். இப்போது அந்த பெட்டி 13 என்ற எண்ணை சேமிக்கிறது என்று சொல்லலாம்."

"Java-வில், ஒவ்வொரு மாறிக்கும் மூன்று முக்கியமான பண்புகள் உள்ளன: type, name மற்றும் value."

"இதன் பொருள் என்ன என்று தெளிவுபடுத்த முடியுமா??"

"நிச்சயமாக. ஒரு மாறியை மற்றொரு மாறியில் இருந்து ஒரு பெயரைப் பயன்படுத்தி வேறுபடுத்தலாம். இது பெட்டியில் இருக்கும் ஒரு லேபிள் போன்றது."

"ஒரு மாறியின் வகை அதில் சேமிக்கப்படக்கூடிய மதிப்புகள்/தரவுகளைத் தீர்மானிக்கிறது. நாம் தொப்பியை தொப்பிப் பெட்டியில் வைக்கிறோம், காலணிகளை காலணிப் பெட்டியில் வைக்கிறோம்."

"மதிப்பு என்பது ஒரு குறிப்பிட்ட பொருள், தரவு, அல்லது மாறியில் சேமிக்கப்பட்டிக்கும் தகவல் ஆகும்."

"வகைகளைப் பற்றி மேலும் கூற முடியுமா??"

"நிச்சயமாக. Java-வில் உள்ள ஒவ்வொரு பொருளுக்கும் ஒரு குறிப்பிட்ட வகை உள்ளது. சில எடுத்துக்காட்டுகளில் முழுஎண், பின் எண், உரை, Cat, House போன்றவையும் அடங்கும்."

"மாறிக்கும் வகை உள்ளது. தனது வகையைப் போலவே ஒரே மாதிரியான வகையைக் கொண்ட மதிப்புகளை மட்டுமே அதனால் சேமிக்க முடியும்."

"இதனை நீங்கள் நிஜ வாழ்க்கையில் பார்க்கலாம். வெவ்வேறு விஷயங்களைச் சேமிக்க வெவ்வேறு விதமான பெட்டிகள் பயன்படுத்தப்படுகின்றன:"

"ஒரு மாறியை உருவாக்க (அல்லது அறிவிக்க), வகையின் பெயரைப் பயன்படுத்துகிறோம்: TypeName variableName."

"சில எடுத்துக்காட்டுகள் இங்கே உள்ளது:"

ஒரு மாறியை அறிவிக்க:
முதலில் வகை, பின்னர் பெயர்.
விளக்கம்
1
int a;
a என்ற ஒரு int  மாறியை உருவாக்குக.
2
String s;
s என்ற ஒரு String மாறியை உருவாக்குக.
3
double c;
c என்ற ஒரு double மாறியை உருவாக்குக.

"முழுஎண் (int என்ற வார்த்தை கொண்டு அறிவிக்கப்படும்) மற்றும் உரை (String என்ற வார்த்தை கொண்டுஅறிவிக்கப்படும்) பொதுவான இரண்டு வகைகள் ஆகும்."

"double என்றால் என்ன?"

"Doubles என்பது பின்னமாகவோ, மெய் எண்ணாகவோ அல்லது எண்களாகவோ இருக்கலாம்."

"type, name, மற்றும் value: என்று மாறிக்கு மூன்று முக்கியமான பண்புகள் உள்ளன என்று சொன்னீர்கள்." ஆனால் இரண்டு மட்டுமே உள்ளது. எனவே, எனது கேள்வி, மாறிக்கான மதிப்பை எவ்வாறு ஒதுக்குவது?"

"நம் பெட்டி ஒப்புமைக்கு மீண்டும் செல்வோம். நீங்கள் 42 என்ற எண்ணை ஒரு காகிதத்தில் எழுதி, அதை ஒரு பெட்டியில் போடுகிறீர்கள் என்று வைத்துக்கொள்வோம். இப்போது அந்த பெட்டி 42 எனும் மதிப்பை சேமிக்கிறது."

"அப்படியா."

"மாறிகளுக்கு மதிப்புகளை ஒதுக்க ஒரு சிறப்புச் செயல்பாட்டை (மதிப்பளித்தல் (assignment)) பயன்படுத்துகிறோம். மதிப்பளித்தல் என்பது ஒரு மாறியில் இருக்கும் மதிப்புகளை இன்னொன்றிற்கு நகலெடுக்கிறது. இது மதிப்புகளை நகர்த்தாது. அது அவற்றை நகலெடுக்கிறது. ஒரு வட்டில் இருக்கும் கோப்பைப் போல. அது பார்க்க இவ்வாறு இருக்கும்:"

குறிமுறை: விளக்கம்
1
i = 3;
மாறி i க்கு மதிப்பு 3 ஐ ஒதுக்குக.
2
a = 1;
b = a+1;
மாறி a க்கு மதிப்பு 1 ஐ ஒதுக்குக.
மாறி b க்கு மதிப்பு 2 ஐ ஒதுக்குக.
3
x = 3;
x = x + 1;
மாறி x க்கு மதிப்பு 3 ஐ ஒதுக்குக.
அடுத்த வரியில், x இன் மதிப்பு 1 அதிகரித்து, x ஐ 4 க்கு சமமாக்குகிறது

"மதிப்பளி செயல்பாட்டைச் (assignment operation) செய்ய, சமக் குறி (=) ஐப் பயன்படுத்துகிறோம்."

"நான் மீண்டும் சொல்கிறேன்: இது ஒப்பிடாது.. சமக்குறியின் வலதுபுறத்தில் உள்ள மதிப்பை இடதுபுறத்தில் உள்ள மாறிக்கு நகலெடுக்கிறோம். ஒப்பீட்டைச் செய்ய, Java இரட்டை சமக்குறியைப் (==) பயன்படுத்துகிறது."

"cat எனும் மதிப்பை ஒரு மாறிக்கு எப்படி இடுவது என்று எனக்கு தெரியும். இது கிட்டத்தட்ட ஒரு நிரல் போன்றது."

"பூனையை எவ்வாறு சிக்க வைப்பது:

1. ஒரு காலி பெட்டியை எடுத்துக் கொள்ளுங்கள்.

2. காத்திருங்கள்."

"இல்லை, அருண். உங்களால் ஒரு பெட்டியில் ஒரு பூனையை மட்டுமே அடைக்க முடியும். புரிகிறதா, நீங்கள் ஒரு மாறிக்கு ஒரு மதிப்பை மட்டுமே ஒதுக்க முடியும் என்று சொல்கிறேன்."

"அப்படியா. மாறிகளை உருவாக்குவதற்கு மேலும் எடுத்துக்காட்டுகளைத் தர முடியுமா??"

"சரி. மீண்டும் சொல்கிறேன்: ஒரு மாறியை உருவாக்க (அல்லது அறிவிக்க), «TypeName variableName» பெயரைப் பயன்படுத்துகிறோம்:

குறிமுறை: விளக்கம்
1
String s;
s எனும் String மாறி உருவாக்கப்பட்டது.
இந்த மாறியால் உரையைச் சேமிக்க முடியும்.
2
int x;
x எனும் int மாறி உருவாக்கப்பட்டது.
இந்த மாறியால் முழு எண்களைச் சேமிக்க முடியும்.
3
int a, b, c;
int d;
a, b, c மற்றும் d என பெயரிடப்பட்ட int மாறிகள் உருவாக்கப்பட்டது.
இந்த மாறிகளால் முழு எண்களைச் சேமிக்க முடியும்.

"அப்படியா!"

"ஒரே வழிமுறையில் ஒரே பெயர்களில் இரண்டு மாறிகளை உருவாக்க முடியாது என்பதை நினைவில் கொள்ளுங்கள்."

"வெவ்வேறு வழிமுறைகளில் முடியுமா?"

"ஆம், செய்ய முடியும். இது வெவ்வேறு வீடுகளில் பெட்டிகளை வைத்திருப்பது போன்றது."

"மாறிக்கு நான் விரும்பும் பெயரை இடலாமா??"

"கிட்டத்தட்ட. மாறி பெயர்களில் இடைவெளிகள், +, -, போன்றவற்றைப் பயன்படுத்த முடியாது. மாறியின் பெயரில் எழுத்துக்கள் மற்றும் எண்களைப் பயன்படுத்துவது சிறந்தது."

"Java எழுத்து உணர்திறன் (case-sensitive) கொண்டது என்பதை நினைவில் கொள்ளுங்கள்.int a என்பது Int a க்குச் சமமானதல்ல."

"அதுமட்டுமல்ல, Java-வில் நீங்கள் ஒரு மாறியை உருவாக்கி அதே நேரத்தில் அதற்கு ஒரு மதிப்பையும் ஒதுக்க முடியும். இது நேரத்தையும் இடத்தையும் மிச்சப்படுத்தும்."

சிறிய குறிமுறை சமமான நீண்ட குறிமுறை
1
int a = 5;
int b = 6;
int a;
a = 5;
int b;
b = 6;
2
int c = 7;
int d = c+1;
int c;
c = 7;
int d;
d = c+1;
3
String s = "I'm Amigo";
String s;
s = "I'm Amigo";

"இந்த முறை இன்னும் சுருக்கமாகவும் தெளிவாகவும் இருக்கும்."

"இப்படித்தான் நாம் செய்வோம்."

"ஒவ்வொரு Java வின் புதிய மாணவருக்கும் தெரிந்திருக்க வேண்டிய இரண்டு வகைகள்: int (முழு எண்கள்) மற்றும் String (உரை/சரங்கள்)."

"int வகை எண்களை மாறிகளில் சேமித்து அவற்றில் கூட்டல், கழித்தல், பெருக்கல், வகுத்தல் போன்ற செயல்பாடுகளைச் செய்ய அனுமதிக்கிறது."

குறிமுறை: விளக்கம்
1
int x = 1;
int y = x*2;
int z = 5*y*y + 2*y + 3;
x என்பது 1க்குச் சமம்
y என்பது 2க்குச் சமம்
z என்பது 20+4+3, அதாவது 27 க்குச் சமம்
2
int a = 5;
int b = 1;
int c = (a-b) * (a+b);
a என்பது 5க்குச் சமம்
b என்பது 1க்குச் சமம்
c என்பது 4*6, அதாவது 24க்குச் சமம்
3
int a = 64;
int b = a/8;
int c = b/4;
int d = c*3;
a என்பது 64க்குச் சமம்
b என்பது 8க்குச் சமம்
c என்பது 2க்குச் சமம்
d என்பது 6க்குச் சமம்

"புரிந்தது. நிரலாக்கம் எப்போதும் இவ்வளவு எளிதாக இருக்குமா?"

"ஆம்."

"நல்லது! எனவே, அடுத்தது என்ன?"

"String வகை 'சரங்கள்' என்றும் அறிப்படும் உரையின் வரிகளைச் சேமிக்க உதவுகிறது."

"Java-வில் ஒரு சரத்தை ஒதுக்க, மேற்கோள் குறிகளுக்குள் உரையை எழுதவேண்டும். "சில எடுத்துக்காட்டுகள் இங்கே உள்ளது:"

குறிமுறை: விளக்கம்
1
String s = "Amigo";
s என்பது "Amigo" ஐக் கொண்டிருக்கும்.
2
String s = "123";
s என்பது "123" ஐக் கொண்டிருக்கும்.
3
String s = "123 + 456";
s என்பது "123 + 456" ஐக் கொண்டிருக்கும்.

"புரிந்தது. இது மிகவும் கடினமாகத் தெரியவில்லை."

"உங்களுக்காக இன்னும் ஒரு வேடிக்கையான உண்மை இங்கே உள்ளது."

"கூட்டல் குறியைக் கொண்டு நீங்கள் சரங்களை (strings) ஒன்று சேர்க்கலாம் (+). இந்த எடுத்துக்காட்டுகளைப் பாருங்கள்."

குறிமுறை: விளக்கம்
1
String s = "Amigo" + " is the best";
s என்பது "Amigo is the best" ஐக் கொண்டிருக்கும்.
2
String s = "";
s என்பது வெற்றுச் சரம் - குறியீடுகள் இல்லாத சரத்தைக் கொண்டிருக்கும்.
3
int x = 333;
String s = "Amigo" + x;
s என்பது "Amigo333" ஐக் கொண்டிருக்கும்.

"எனவே, எண்களில் சரங்களை (strings) சேர்க்கலாமா?"

"ஆம், ஆனால் சரங்களையும் (strings) எண்களையும் சேர்க்கும்போது, அது எப்போதும் ஒரு சரத்தையே விடையாகக் கொடுக்கும் என்பதை நினைவில் கொள்ளுங்கள்."

"உங்கள் உதாரணத்திலிருந்து நான் அதை அறிந்து கொண்டேன்."

"நீங்கள் மிகவும் புத்திசாலி என்றால், திரையில் ஒரு மாறியை எவ்வாறு காண்பிப்பது என்பதைக் கண்டுபிடியுங்கள்."

"ம்ம். மாறியா? திரையிலா? எதுவும் மனதிற்குத் தோன்றவில்லை."

"உண்மையில், இது எளிது. திரையில் எதையாவது காட்ட, System.out.println() கட்டளையைப் பயன்படுத்துகிறோம், மேலும் நாம் அச்சிட விரும்புவதை ஒரு செயலுருபாக (argument) அனுப்புகிறோம்."

குறிமுறை: திரை வெளியீடு
1
System.out.println("Amigo");
Amigo
2
System.out.println("Ami"+"go");
Amigo
3
String s = "Amigo";
System.out.println(s);
Amigo
4
String s = "Am";
System.out.println(s+"igo");
Amigo

"ஆஹா! இது எல்லாவற்றையும் தெளிவாக்குகிறது."

"நல்லது. இதோ உங்களுக்காக மேலும் மூன்று பாடப்பயிற்சிகள்."