Skip to main content

Operators - 1 කොටස




Operators කියන්නෙ, වරකට යම්කිසි අගයන් (operands) එකක්, දෙකක් හෝ තුනක් මත විශේෂ ක්‍රියාවක් සිදුකර එයින් ප්‍රතිඵලයක් ලබා ගැනීම සඳහා පරිගනක භාශා තුල වෙන් කර ඇති සංඛේත විශේෂයකටයි. ජාවා පරිගනක භාශාව තුල මෙවැනි operators ප්‍රධාන වර්ග 6කට වෙන් කර දක්වා තියෙනව.
  1. Arithmetic Operators
  2. Relational Operators
  3. Logical Operators
  4. Bitwise Operators
  5. Assignment Operators
  6. Misc Operators

Arithmetic Operators

Arithmetic operators ගණිතමය සැකසුම් සිදු කිරීමට භාවිතා කරනව.
A කියන int වර්ගයෙ විචල්‍යයේ 10 අගයද, B කියන int වර්ගයේ විචල්‍යයේ 4 කියන අගයද ගබඩා කර ඇති වැඩසටහනක් උදාහරණයකට ගමු.

Operatorවිස්තරයඋදාහරණයOperator Type
+Addition - අගයන් 2ක එකතුව ලබා දෙයි.A + B මගින් 14Binary
-Subtraction - ලබාදෙන අගයන් 2ක, වම්පස අගයෙන් දකුණු පස අගය අඩු කර අන්තරය ලබාදෙයි.A - B මගින් 6Binary
*Multiplication - ලබා දෙන අගයන් 2ක් ගුණ කර ප්‍ර්තිඵලය ලබා දෙයි.A * B මගින් 40Binary
/Division - ලබාදෙන අගයන් 2ක, වම්පස අගය දකුණු පස අගයෙන් බෙදා ප්‍රතිඵලය ලබාදෙයි.A / B මගින් 2.5Binary
%Modulus - ලබාදෙන අගයන් 2ක, වම්පස අගය දකුණු පස අගයෙන් බෙදා ඉතිරි අගය ලබාදෙයි.A % B මගින් 2Binary
++Increment - ලබාදෙන අගය එකකින් වැඩිකර අගය ලබාදෙයි.++B මගින් 5Unary
--Decrement - ලබාදෙන අගය එකකින් අඩුකර අගය ලබාදෙයි.--B මගින් 3Unary

මොකක්ද මේ Operator Type කියන්නෙ...
Operator Type වර්ග 3ක් තියෙනව.
  • Unary - මේ වර්ගයෙ operators වරකට එක් අගයක් මත පමණක් ක්‍රියා කර අගයක් ලබාදෙයි.
  • Binary - වරකට අගයන් 2ක අතර සැකසුම් සිදුකර අගයක් ලබාදෙන operators මෙ නමින හඳුන්වනව.
  • Ternary - අගයන් 3ක් සමග එකවර ක්‍රියා කර පිළිතුරක් ලබාදෙන operators මේ නමින් හඳුන්වනව. 

Relational Operators

Relational Operators මගින් අගයන් අතර සැසඳුම් සිදුකර boolean වර්ගයෙ (true හෝ false) අගයක් ලබාදෙයි.
A නම් විචල්‍යයේ 10 අගයද, B නම් විච්ල්‍යයේ 5 අගයද ඇත්නම්,

OperatorDescriptionExampleOperator Type
==ලබාදුන් අගයන් එකිනෙකට සමානදැයි පරීක්ෂා කරයි.(A == B) මගින් falseBinary
!=ලබාදුන් අගයන් එකිනෙකට අසමානදැයි පරීක්ෂා කරයි.(A != B) මගින් true.Binary
>ලබාදුන් අගයන් දෙකෙන් වම් පස අගය දකුනු පස අගයට වඩා විශාලදැයි පරීක්ෂා කරයි.(A > B) මගින් true.Binary
<ලබාදුන් අගයන් දෙකෙන් වම් පස අගය දකුනු පස අගයට වඩා කුඩාදැයි පරීක්ෂා කරයි.(A < B) මගින් falseBinary
>=ලබාදුන් අගයන් දෙකෙන් වම් පස අගය දකුනු පස අගයට වඩා විශාල හෝ සමානදැයි පරීක්ෂා කරයි.(A >= B) මගින් trueBinary
<=ලබාදුන් අගයන් දෙකෙන් වම් පස අගය දකුනු පස අගයට වඩා කුඩා හෝ සමානදැයි පරීක්ෂා කරයි.(A <= B) මගින් true.Binary


Logical Operators

Logical Operators මගින් boolean වර්ගයේ data අතර තාර්කික සැසඳුම සිදුකර boolean වර්ගයේම පිලිතුරක් ලබාදෙයි.

පරිගනක වැඩසටහන් නිර්මාණයේදී මූලික වශයෙන් දැනගත යුතු තාර්කික ක්‍රම 4ක් තිබෙනව.
  1. AND
  2. OR
  3. NOT
  4. XOR
AND තාර්කිකය & සලකුණ මගින් නිරූපනය කරනව. සංසන්දනය කරන අගයන් 2කම සත්‍යනම් පමණක් ප්‍රතිඵලයද සත්‍ය වේ.
OR තාර්කිකය | සලකුණින් නිරූපනය කරන අතර ලබාදෙන අගයන් 2ක සසඳා, ඉන් එක් අගයක් හෝ සත්‍යනම් ප්‍රතිඵලය සත්‍ය ලෙස ලබාදෙයි. අගයන් 2කම අසත්‍යනම් පමනක් ප්‍රතිඵලය අසත්‍ය වේ.
NOT තාර්කිකය ! සලකුණ මගින් නිරූපනය කරනව. ලබාදෙන අගයේ ප්‍රතිවිරුද්ධ boolean අගය ලබාදෙයි.
XOR තාර්කිකය මගින්, ලබාදෙන අගයන් සසඳා එම අගයන් එකිනෙකට ප්‍රතිවිරුද්ධ අගයන්නම් පමණක් සත්‍යයැයි ප්‍රතිඵලය ලබාදෙයි. මෙම තාර්කිකය ^ සලකුණින් නිරූපනය කරනු ලබයි.

පහත වගුවෙන් මෙම තාර්කික ක්‍රම මගින් A සහ B නම් අගයන් 2ක වෙත ඒ ඒ අවස්තා වලදී ලබාදෙන අගයන් දක්වා ඇත.

ABA & BA | B!A!BA ^ B
falsefalsefalsefalsetruetruefalse
falsetruefalsetruetruefalsetrue
truefalsefalsetruefalsetruetrue
truetruetruetruefalsefalsefalse

A නම් විචල්‍යයේ true අගයද, B නම් විච්ල්‍යයේ false අගයද ඇත්නම්,

Operatorවිස්තරයඋදාහරණය
&&ජාවා වල AND Operator & සලකුණු 2කින් භාවිතා කරනව. නමුත් ඉහත වගුවේ දක්වා ඇති අයුරින් ක්‍රියා කරයි. අගයන් 2ම සත්‍යනම් පිලිතුරද සත්‍ය වේ.(A && B) is false.
||ජාවා වල OR Operator | සලකුණු 2කින් භාවිතා කරනව. නමුත් ඉහත වගුවේ දක්වා ඇති අයුරින් ක්‍රියා කරයි. අගයන් 2න් එකක් හෝ සත්‍යනම් පිලිතුරද සත්‍ය වේ.(A || B) is true.
!ඉහත වගුවේ දක්වා ඇති අයුරින් ක්‍රියා කරයි. ලබාදෙන අගයේ ප්‍රතිවිරුද්ධ අගය ලබාදෙයි.!(A && B) is true.


Bit-wise Operators, Assignment Operators සහ Misc Operators පිළිබඳව මීලග පාඩමින් කියා දෙන්නම්.

Comments

Popular posts from this blog

JVM (Java Virtual Machine) ගැන මූලික අවබෝධයක්

ටික දවසකට පස්සේ ඔන්‍න‍ තවත් පාඩමක් අරන් ආවා. :) කලින් පාඩම අවසානයේදී මං කිවුව වගේම ජාවා වැඩසටහනක් පරිගණකයේදී ක්‍රියාත්මක වෙන්නේ කොහොමද කියල පැහැදිලි කරන්නයි මේ සූදානම. මං හිතනවා මේ හැමෝම Operating System, එහෙමත් නැත්නම් මෙහෙයුම් පද්ධති කියන දේ දන්නවා කියල... උදාහරණයක් විදියට, Windows XP, Windows Vista, Windows 7, Windows 8, Mac OSX, Ubuntu, Solaris, Android වගේ නම් වලින් අපි අහල දැනගෙන තියෙන්නේ මෙහෙයුම් පද්ධති කිහිපයක්. මේ මෙහෙයුම් පද්ධති බොහොමයක් පරිගනකයකදී ක්‍රියාත්මක වෙන්නේ එකිනෙකට වෙනස් ආකාර වලින්. ඒ වගේමයි ඒවා තුල ක්‍රියාත්මක කල හැකි මෘදුකාංගත් එකිනෙකට වෙනස්. මේ නිසාම බොහොමයක් මෘදුකාංග නිපදවන්නන්ට සිදු වෙලා තියෙනවා ඒ ඒ මෙහෙයුම් පද්ධතියට සරිලන විදියට එකම මෘදුකාංගය වෙන වෙනම කේත කරන්නට. නමුත් ජාවා පරිගණක භාෂාව භාවිතයෙන් නිපදවන මෘදුකාංග වලට මේ ගැටළුව උත්ගත වෙන්නේ නැහැ! ජාවා මේ තරම් විශේෂ වෙන්න මේකත් එක් හේතුවක්. මුල් පාඩම් වලදී මං සඳහන් කල විදියට, පරිගණකයක් හඳුනන්නේ 1 සහ 0 පමණයි. හරියටම කිවුවොත් අදාල අවස්ථාවේදී පරිගණකයේ පරිපථ හරහා විදුලිය ගමන් කරනවද නැද්ද කියන එක තම...

ලිනක්ස් මෙහෙයුම් පද්ධතියක Java Development Kit (JDK) install කරන විදිය

ලිනක්ස් පාදක මෙහෙයුම් පද්ධති කියන්නේ අද ලෝකයේ දියුණුම සහ වේගයෙන්ම දියුණු වන මෙහෙයුම් පද්ධතියි. ඒ වගේම ඒ සෑම මෙහෙයුම් පද්ධතියක්ම වාගේ නොමිලේ ලබාගන්නට හැකියාව තිබෙනවා. නමුත් බොහොමයක් පරිගණක බාවිතා කරන්නන් ලිනක්ස් පාදක මෙහෙයුම් පද්ධති බවිත නොකරන්නේ, මේ මෙහෙයුම් පද්ධති තුල සමහර මෘදුකාංග ස්ථාපනය කිරීම වින්ඩෝස් පරිගණක වල තරම් පහසු නැති නිසායි. නමුත් ලෝකයේ පරිගණක ක්‍රමලේඛ ශිල්පීන්ගේ ප්‍රියතම මෙහෙයුම් පද්ධතිය බවට ලිනක්ස් පාදක මෙහෙයුම් පද්ධති පත්ව තිබෙනවා. එයට ප්‍රධානම හේතුවනම් ලිනක්ස් පාදක මෙහෙයුම් පද්ධති වල ඇති කාර්යක්ෂමතාවයයි. ලිනක්ස් පාදක මෙහෙයුම් පද්ධති බාවිතා කරන අයට Java Development Kit (JDK) ස්ථාපනය කර ගන්නා අයුරු මේ ලිපියෙන් කියල දෙන්නම්. (ලිනක්ස් පාදක මෙහෙයුම් පද්ධති ආශ්‍රිතව ඇති වන ඕනෑම ගැටළුවක් Linux Warriors  community එකේ පොස්ට් කරන්න. ඔබට නිසැකවම පිළිතුරක් ලැබේවි) ලිනක්ස් මෙහෙයුම් පද්ධතියක Java install කරන විදිය මුලින්ම ඔබේ පරිගණකයේ processor architecture එක (32-bit, 64-bit) දැන ගමු. මේ සඳහා මුලින්ම ලිනක්ස් terminal එක open කරලා,  file /sbin/...

Variables සහ Data Types ( 1 කොටස )

ඔන්න පොරොන්දු වුනා වගේම Data Types ගැන පාඩම අද ඉදිරිපත් කරනවා. Data types කියන්නේ මොනවද කියල විස්තර කරන්න කලින් මෙන්න මේ පොඩි ප්‍රෝග්‍රෑම් එක ක්‍රියාත්මක කරලා බලන්න. මේ code එක Notepad එකට copy කරලා, මම කියල දුන්නු විදියට cmd එකෙන් compile කරලා run කරලා බලන්න. class Test{ public static void main(String args[]){   byte b = 10; short s = 20;   int i = 30; long l = 40;   double d = 34.5;   float f = 55.456f;   char c = 'x';   boolean bool = true;   System.out.println(b);   System.out.println(s);   System.out.println(i);   System.out.println(l);   System.out.println(d);   System.out.println(f);   System.out.println(c);   System.out.println(bool); } } මේ code එක run කලාම පහත දැක්වෙන විදියේ ප්‍රතිපලයක් ලැබේවි. වැඩසටහනේ අන්තිම පේලි...