Home / ພື້ນຖານ Java / ຕົວດຳເນີນການ Operator
String concatenating operator ຫລື ເຄື່ອງໝາຍໃນການເຊື່ອມຕໍ່ String ຈະໃຊ້ສຳລັບຕໍ່ String ເປັນ String ດຽວກັນ ຕົວແປຣແບບ String ນັ້ນເປັນຄາດທີ່ສ້າງມາເພື່ອສະໜັບສະໜູນການຂຽນໂປຣແກຣມໃນພາສາ Java ເພື່ອໃຫ້ງ່າຍຂຶ້ນ ໂດຍເຮົາໃຊ້ເຄື່ອງໝາຍ + ເມື່ອໃຊ້ກັບ String ນັ້ນໝາຍເຖິງເປັນການນຳມາຕໍ່ກັນ
ເມື່ອເຮົານຳ String ໄປຕໍ່ກັບຕົວເລກໂດຍໃຊ້ເຄື່ອງໝາຍ concatenating ຈະໃຫ້ຕົວເລກນັ້ນກາຍເປັນ String ເຮົາໄດ້ເຫັນວ່າເຮົາໄດ້ໃຊ້ງານມັນໄປແລ້ວຈາກບົດຮຽນກ່ອນໜ້າ ຕໍ່ໄປມາເບິ່ງຕົວຢ່າງການໃຊ້ເຄື່ອງໝາຍ String concatenating
public class StringConcatenating {
public static void main (String[] atgs) {
String firstName = "Kittisay";
String lastName = "SENGTHONG";
int number = 34;
System.out.println(firstName + lastName);
System.out.println(firstName + " " + lastName);
System.out.println(firstName + number);
System.out.println(lastName + true);
}
}
ໝາຍເຫດ: ໃນຕົວຢ່າງເຮົາໄດ້ນຳໃຊ້ຕົວແປຣ String ມາຕໍ່ກັນ ແລະ String ຕໍ່ກັບຕົວເລກ ແລະ ຄ່າຂອງ Boolean ມັນສາມາດຕໍ່ໄດ້ກັບຂໍ້ມູນທຸກປະເພດ ແລະ ຂໍ້ມູນເຫຼົ່ານັ້ນຈະຖືກແປລງເປັນ String ເຊິ່ງຈະໄດ້ຜົນລັບທ໌ການຣັນດັ່ງຂ້າງລຸ່ມ
KittisaySENGTHONG
Kittisay SENGTHONG
Kittisay34
SENGTHONGtrue
Assignment operator (ຕົວດຳເນີນການກຳນົດຄ່າ) ເປັນຕົວດຳເນີນການທີ່ຄຳນົດຄ່າໃຫ້ກັບໜົດທຸກຄ່າຂອງຕົວແປຣ ຈາກ Literal ຫລື Expression ໂດຍໃຊ້ເຄື່ອງໝາຍເທົ່າກັບ (=) ຕົວຢ່າງການໃຊ້ງານຕົວດຳເນີນການກຳນົດຄ່າເປັນດັ່ງນີ້
int a = 10;
float b = 5.3f;
String name = "Kittisay";
Random r = new Random();
MyClass object1 = new MyClass();
ໝາຍເຫດ: ຈາກຕົວຢ່າງ ເປັນການໃຊ້ຕົວດໍາເນີນການກໍ່ານົດຄ່າ ໃນການກໍ່ານົດຄ່າໃຫ້ກັບຕົວແປຣປະເພດຕ່າງໆ ຕົວແປຣທີ່ເຮົາເຫັນສອງແບບທຳອິດເປັນ primitive types ໃນພາສາ Java ສ່ວນ String ແລະ Random ເປັນຄາດໄລບາຣີ່ທີ່ມີຢູ່ໃນພາສາ Java ເຮົາສາມາດໃຊ້ງານໄດ້ເລີຍ ສຳລັບອັນສຸດທ້າຍເປັນຄາດທີ່ຜູ້ໃຊ້ສ້າງຂຶ້ນເອງ ເຊິ່ງມັນຢູ່ໃນເລື່ອງການຂຽນໂປຣແກຣມແບບອອບເຈັກທີ່ເຮົາຈະໄດ້ຮຽນຕໍ່ໄປໃນບົດນີ້
Arithmetic operators (ຕົວດຳເນີນການທາງຄນິດສາດ) ເປັນຕົວນຳເນີນການທີ່ເກີດຈາກ Operand ແລະ Operator ຕັ້ງແຕ່ 1 ຕົວຂຶ້ນໄປມາຄິດໄລ່ເພື່ອໃຫ້ໄດ້ຜົນລັບໃໝ່ ມັນເຮັດວຽກຮ່ວມກັບຕົວດຳເນີນການກຳນົດຄ່າ (=) ໂດຍຕົວດຳເນີນການມີ 5 ແບບດັ່ງນີ້
+
-
*
/
%
Addition
Subtraction
Multiplication
Division
Modulo
c = a + b
c = a - b
c = a * b
c = a / b
c = a % b
ໝາຍເຫດ: ເຮົາອາດຈະເຫັນບາງຢ່າງໃໝ່ກໍ່ຄື ຕົວດຳເນີນການ Modulo (%) ເປັນຕົວດຳເນີນການໃນການຫານເອົາເສດ (reminder) ທີ່ມັນຈຳເປັນໃນການຂຽນໂປຣແກຣມຄອມພິວເຕີ ຕໍ່ໄປເບິ່ງຕົວຢ່າງການໃຊ້ຕົວດຳເນີນການທາງຄນິດສາດ
public class ArithmeticOperator {
public static void main (String[] atgs) {
int a = 5;
int b = 3;
System.out.println(a + " + " + b + " = " + (a + b));
System.out.println(a + " - " + b + " = " + (a - b));
System.out.println(a + " * " + b + " = " + (a * b));
System.out.println(a + " / " + b + " = " + (a / b));
System.out.println(a + " % " + b + " = " + (a % b));
}
}
ໝາຍເຫດ: ເຮົາຈະເຫັນວ່າມັນກໍ່ຄື ການ ບວກ ລົບ ຄູນ ຫານ ເທົ່ານັ້ນເອງ ໃນຄອມພິວເຕີນັ້ນກໍ່ມີການຄິດໄລ່ເຊັ່ນດຽວກັນ ແລະ ຜົນລັບຂອງມັນກົງໄປກົງມາດັ່ງຂ້າງລຸ່ມນີ້
5 + 3 = 8
5 - 3 = 2
5 * 3 = 15
5 / 3 = 1
5 % 3 = 2
Compound assignment ຖືກໃຊ້ເພື່ອອັບເດດຄ່າຂອງຕົວແປຣຈາກຄ່າເດີມຂອງມັນທີ່ມີຢູ່ ໂດຍມັນຈະເປັນຮູບແບບຫຍໍ້ຂອງຕົວດຳເນີນການແບບ Arithmetic Operator ແລະ ຕົວດຳເນີນການ Bitwise operators ເພື່ອໃຫ້ຂຽນໄດ້ວ່ອງໄວແລະ ຫຼຸດຜ່ອນຄວາມຜິດພາດໃນການຂຽນໂປຣແກຣມໄດ້ຫຼາຍກວ່າເກົ່າ
+=
-=
*=
/=
%=
>>=
<<=
&=
^=
|=
a += 2;
a -= 2;
a *= 2;
a /= 2;
a %= 2;
a >>= 2;
a <<= 2
a & = 2;
a ^= 2;
a |= 2;
a = a + 2
a = a - 2
a = a * 2
a= a / 2
a = a % 2
a = a >> 2
a = a << 2
a = a & 2
a= a ^ 2
a = a | 2
ຕົວດຳເນີນການຕໍ່ໄປທີ່ໃຊ້ຖືກໃຊ້ເລື້ອຍໃນການຂຽນໂປຣແກຣມກໍ່ຄື Increment Operator (ຕົວດຳເນີນການເພີ່ມຄ່າ) ແລະ Decrement Operator (ຕົວດຳເນີນການຫຼຸດຄ່າ) ມັນຖືກໃຊ້ເພື່ອເພີ່ມ ຫລື ຫຼຸດຄ່າຂອງຕົວແປຣເທື່ອລະ 1 ໂດຍແບ່ງອອກໄດ້ເປັນດັ່ງນີ້
++ (prefix)
(postfix)++
-- (prefix)
-- (postfix)
++a;
a++;
--a;
a--;
a = a + 1;
a = a + 1;
a = a - 1;
a = a - 1;
ໝາຍເຫດ: ຕົວດໍາເນີນການທັງສອງແບບນັ້ນຈະແບ່ງຍ່ອຍລົງໄປອີກເປັນ prefix ແລະ postfix ຕົວດຳເນີນການທີ່ເປັນແບບ prefix ຈະກໍ່ການເພີ່ມຄ່າຂອງຕົວແປຣຂຶ້ນທັນທີກ່ອນທີ່ຈະປະມວນຜົນຄຳສັ່ງນັ້ນ ສ່ວນຕົວດຳເນີນການແບບ postfix ຈະເພີ່ມຄ່າຫຼັງຈາກທີ່ປະມວນຜົນຄຳສັ່ງນັ້ນສຳເລັດສິ້ນແລ້ວ ກໍ່ຄືຄຳສັ່ງທີ່ຈົບດ້ວຍເຄື່ອງໝາຍ ; ມາເບິ່ງຕົວຢ່າງທີ່ຈະຊ່ວຍໃຫ້ເຮົາເຂົ້າໃຈໄດ້ງ່າຍຂຶ້ນ
public class IncrementDecrement {
public static void main (String[] atgs) {
int i = 5;
int j = 5;
System.out.println("++i = " + (++i));
System.out.println("j++ = " + (j++));
// At this line either i and j are 6
}
}
ໝາຍເຫດ: ຈາກໂຄ້ດຕົວຢ່າງຂ້າງເທິງ ເປັນການໃຊ້ຕົວດຳເນີນການເພີ່ມ ແລະ ຫຼຸດຄ່າ ເຮົາໄດ້ກຳນົດຄ່າໃຫ້ກັບຕົວແປຣ i ແລະ j ມີຄ່າເທົ່າກັນ ແລະ ສະແດງຜົນອອກທາງໜ້າຈໍ ++i ນັ້ນຈະເພີ່ມຄ່າກ່ອນທີ່ສະແດງຜົນ ສ່ວນ j++ ນັ້ນຈະເພີ່ມຄ່າຫຼັງຈາກທີ່ສະແດງຜົນຄ່າສຳເລັດແລ້ວ ຈຶ່ງເຮັດໃຫ້ຜົນລັບຂອງ i ທີ່ສະແດງອອກມາເປັນ 6 ແລະ j ເປັນ 5 ດັ່ງຜົນການເຮັດວຽກງານຂ້າງລຸ່ມ
++i = 6
j++ = 5
Relational and comparison operators (ຕົວດຳເນີນການປຽບທຽບ) ໃຊ້ສຳລັບປຽບທຽບຂໍ້ມູນ ໂດຍການສ້າງ expression ຂຶ້ນມາ ຄ່າທີ່ໄດ້ຈາກການປຽບທຽບຈາກຕົວດຳເນີນການເຫຼົ່ານີ້ຈະເປັນ Boolean Value (true or false) ມັນມັກຈະໃຊ້ກັບຄຳສັ່ງປຽບທຽບເຊັ່ນ if while do-while for ເພື່ອສ້າງເງື່ອນໄຂບາງຢ່າງ
==
!=
<
>
<=
>=
a == b
a! = b
a < b
a > b
a <= b
a >= b
ຈິງຖ້າ `a` ເທົ່າກັບ` b`, ຖ້າບໍ່ດັ່ງນັ້ນຈະບໍ່ຖືກຕ້ອງ
ຈິງຖ້າ `a` ບໍ່ເທົ່າກັບ `b`, ຖ້າບໍ່ດັ່ງນັ້ນຈະບໍ່ຖືກຕ້ອງ
ຈິງຖ້າ `a` ນ້ອຍກວ່າ `b`, ຖ້າບໍ່ດັ່ງນັ້ນຈະບໍ່ຖືກຕ້ອງ
ຈິງຖ້າ `a` ໃຫຍ່ກວ່າ `b`, ຖ້າບໍ່ດັ່ງນັ້ນຈະບໍ່ຖືກຕ້ອງ
ຈິງຖ້າ `a`ນ້ອຍກວ່າ ຫຼື ເທົ່າກັບ`b ', ຖ້າບໍ່ດັ່ງນັ້ນຈະບໍ່ຖືກຕ້ອງ
ຈິງຖ້າ `a`ໃຫຍ່ກວ່າ ຫຼື ເທົ່າກັບ`b ', ຖ້າບໍ່ດັ່ງນັ້ນຈະບໍ່ຖືກຕ້ອງ
ຕໍ່ໄປມາເບິ່ງຕົວຢ່າງການໃຊ້ງານຂອງຕົວດຳເນີນການປຽບທຽບ
public class ComparisonOperators {
public static void main (String[] atgs) {
int a = 5;
int b = 8;
System.out.println(a + " equal to " + b + " -> " + (a == b));
System.out.println(a + " not equal to " + b + " -> " + (a != b));
System.out.println(a + " less than " + b + " -> " + (a < b));
System.out.println(a + " more than " + b + " -> "+ (a > b));
System.out.println(a + " less than or equal " + b + " -> " + (a <= b));
System.out.println(a + " more than or equal " + b + " -> " + (a >= b));
}
}
ໝາຍເຫດ: ຂ້າງເທິງເປັນການກຳນົດຄ່າໃຫ້ກັບຕົວປ່ຽນ a ເປັນ 5 ແລະ ເປັນ 8 ແລະ ນຳມາປຽບທຽບກັນດ້ວຍຕົວດຳເນີນການແບບຕ່າງໆ ຈະໄດ້ຜົນລັບດັ່ງຂ້າງລຸ່ມ
5 equal to 8 -> false
5 not equal to 8 -> true
5 less than 8 -> true
5 more than 8 -> false
5 less than or equal 8 -> true
5 more than or equal 8 -> false
Logical operators (ຕົວດຳເນີນການຕັກກະສາດ) ເປັນຕົວດຳເນີນການທີ່ໃຊ້ສຳລັບ expression ຕັ້ງແຕ່ໜຶ່ງ expression ຂຶ້ນໄປ ໂດຍຕົວດຳເນີນການຕັກກະສາດໃນພາສາ Java ມີດັ່ງນີ້
!
&&
||
Not
And
Or
! true
true && true
true || false
ໂດຍຕົວດຳເນີນການຕັກສາດຈະໃຊ້ປຽບທຽບກັບຄ່າສອງຄ່າ ຍົກເວັ້ນຕົວດຳເນີນການ Not ຄ່າທີ່ນຳມາເປັນປະເມີນນັ້ນຈະຕ້ອງເປັນ Boolean ແລະ ຜົນລັບທີ່ໄດ້ຈະເປັນ Boolean ເຊັ່ນກັນ
true
false
! true
! false
false
true
ໝາຍເຫດ: ຕົວດຳເນີນການທາງຕັກສາດ Not ຈະກັບຄ່າຈາກ true ເປັນ false ແລະ ໃນທາງກັບກັນ
true
true
false
true
false
false
true && true
true && false
false && false
true
false
false
true
true
false
true
false
false
true && true
true && false
false && false
true
false
false
ໝາຍເຫດ: ຕົວດຳເນີນການທາງຕັກສາດ Or ຖ້າ expression ຢ່າງນ້ອຍໜຶ່ງຕົວເປັນ true ຈະໄດ້ຜົນລັບປັນ true ນອກເໜືອຈາກນັ້ນຈະໄດ້ຜົນລັບເປັນ false
ຕໍ່ໄປມາເບິ່ງຕົວຢ່າງການໃຊ່ຕົວດຳເນີນການຕັກສາດໃນການຂຽນໂປຣແກຣມ ເຮົາມັກຈະໃຊ້ກັບຄຳສັ່ງກວດສອບເງື່ອນໄຂ ເຊັ່ນ if
public class LogicalOperators {
public static void main (String[] atgs) {
int score = 8;
int level = 4;
if (score >= 10 && level >= 5) {
System.out.println("You get a gold badge.");
}
if (score >= 10 || level >= 3) {
System.out.println("You get a bronze badge.");
}
}
}
ໝາຍເຫດ: ຈາກຕົວຢ່າງໂປຣແກຣມດ້ານເທິງ ມີຕົວແປຣເກັບຄຳແນນ(Score) ແລະ ເລເວລ(Level) ໂດຍໃຊ້ຄຳສັ່ງ if ໃນການປຽບທຽບ ເຮົາຈະໄດ້ຮຽນໃນບົດຕໍ່ໄປ ຖ້າຄະແນນຂອງເຮົາຕັ້ງແຕ່ 10 ແລະ ເລເວນຕັ້ງແຕ່ 5 ຂຶ້ນໄປທ່ານຈະໄດ້ຮັບ Gold badge ແລະ ຖ້າຄະແນນຂອງເຮົາຕັ້ງແຕ່ 10 ຫລື ມີເລເວລຕັ້ງແຕ່ 3 ທ່ານຈະໄດ້ຮັບ Bronze badge ດັ່ງນັ້ນເມື່ອຣັນໂປຣແກຣມເຮົາຈຶ່ງໄດ້ຮັບແຕ່ Bronze badge
You get a bronze badge.
ເປັນຕົວດຳເນີນການປຽບທຽບເງື່ອນໄຂແບບສັ້ນ ທີ່ປະເມີນ expression ແລະ ໃຫ້ຜົນລັບເປັນຄ່າໜຶ່ງ ຖ້າ expression ເປັນ true ແລະ ອີກຄ່າຖ້າ expression ເປັນ false ໂດຍມັນມີຮູບແບບການໃຊ້ງານດັ່ງນີ້
expression ? valueForTrue : valueForFalse ;
ໂດຍການເຮັດວຽກງານຂອງມັນນັ້ນສາມາດເຮັດຫນ້າທີ່ໄດ້ຄ້າຍຄຳສັ່ງ if ຖ້າເງື່ອນໄຂ ແລະ ການເຮັດວຽກງານບໍ່ຊັບຊ້ອນ ແລະ ມີແຕ່ຄຳສັ່ງດຽວທີ່ຈະໃຫ້ເຮັດວຽກ ໂດຍມີຕົວຢ່າງການໃຊ້ງານດັ່ງນີ້
public class TernaryOperator {
public static void main (String[] atgs) {
int n = -2;
String name = "Mateo";
System.out.println(n < 0 ? "n is a negative number." : "n is a positive number.");
System.out.println(name.length() <= 5 ? "Your name is accepted." : "Your name is too long." );
}
}
ແລະມັນຈະໄດ້ຜົນລັບດັ່ງຕໍ່ໄປນີ້
n is a negative number.
Your name is accepted.
ໃນບົດນີ້ ເຈົ້າໄດ້ຮຽນຮູ້ກ່ຽວກັບຕົວດຳເນີນການໃນພາສາ Java ຢ່າງລະອຽດ ຊຶ່ງມັນມີຄວາມຈຳເປັນທີ່ຈະໃນໄປໃຊ້ໃນການຂຽນໂປຣແກຣມໃນບົດຕໍ່ໄປ ຕໍ່ໄປເຮົາຈະກໍ່ການຂຽນໂປຣແກຣມກັບຕົວຢ່າງທີ່ຈຳລອງໂປຣແກຣມຈິງ ໂດຍການຮັບຂໍ້ມູນຈາກຜູ້ໃຊ້ທາງຄີບອດ