Scope, Expressions, Statement, Conditions และ Loop

Scope

เราใช้ block { } ในการกำหนด scope ของตัวแปร เป็นการกำหนด lifecycle วิธีหนึ่งเช่น

class A {

        int a=1;

        void test() {

               System.out.println(a);//print data member a

               {

                        int a=2;//ประกาศตัวแปร local a 
                        System.out.println(a);//กลายเป็นอ้างถึง local a ใน block นี้

               }

              System.out.println(a);//print data member a

              {

                    int a=3;
                   System.out.println(a);//กลายเป็นอ้างถึง local a ใน block นี้

               }

               a = 7;//assign ค่าให้กับ Data member   
               System.out.println(a);//print data member a

        }

}

Expression

expression คือการทำอะไรบางอย่างเช่น คำนวณตัวแปร concat String แล้วได้ผลลัพท์ออกมาค่าหนึ่งเช่น

++a มีความหมายเทียบเท่ากับ a=a+1
a++ ผลลัพท์คือ a หลังจากนั้น a ถูกบวกไป 1
5*5+3 ผลลัพท์เป็น int คือ 28
25+" hello "+"world!" ผลลัพท์เป็น String คือ 25 hello world!
(5==3)||true ผลลัพท์เป็น boolean คือ true
1<<2  ผลลัพท์เป็น int คือ 4
(false)?"True":"False" ผลลัพท์เป็น String คือ False
"text" instanceof Object คือการตัวสอบค่า instance เป็นของ class นี้หรือไม่ 
ผลลัพท์เป็น true

สังเกตว่าเราสามารถจัดกลุ่มของ expression ได้โดยใช้วงเล็บ ส่วน operator + เมื่อทำกับ String จะได้ผลลัพท์เป็น String เสมอ

Statement

คือประโยคสั่งการทำงาน จะขั้นด้วย ; เช่น int a = 0; คือ assigment statement
System.out.println(); คือการเรียกใช้ Method โดยสั่งให้ print new line ออกมาที่ 
console นอกจากนี้ยังมี

  • if-else statement เป็น conditions สำหรับ control flow program
  • while, do-while และ for statement สำหรับการวนลูป

โดยที่ statement ต่างๆมักจะใช้ expression เป็น input เสมอ เช่น

int a;
//if-else statement
if ((a=1)==0) {

} else if (a==1) {

}

a = 0;//assignment statement

while(true) {
                if(a==0){a++; continue;}//continue statement เพื่อกระโดดไปเริ่ม loop นี้ใหม่

        if(a==1) break;//break statement เพื่อทำให้หลุดจาก loop

}

do {

     //ถูกทำก่อนรอบเดียวแล้วหลุดจากลูป

} while (false);

int[]num = {0,1,2};

for (int i=0;i<num.length;i++) {
       System.out.println(num[i]);

}

for (int i:num) {

       System.out.println(num[i]);
}

 

 

สอนพื้นฐาน Java
Line: wizarud
Gmail: [email protected]