นิพจน์และโครงสร้างควบคุม ของภาษาjava
ข่าวสาร
ป้องกันการแฮกไอดี ด้วย12วิธีสุดง่าย
ป้องกันการแฮกไอดี ด้วย12วิธีสุดง่าย
   ไอดีและรหัสผ่านถือเป็นสิ่งสำคัญมาก ที่ไม่ควรให้ใครรู้ แต่ยังมีพวกแฮกเกอร์นิสัยไม่ดี ชอบใช้วิธีการต่างๆ เพื่อให้ได้มาซึ่งไอดีและรหัสผ่านซึ่งเป็นความลับ
url คืออะไร
url คืออะไร
   เว็บไซต์ที่พวกเราเข้ากัน เพื่อนๆสังเกตุหรือไม่ว่า แต่ละเว็บไซต์จะมีชื่อเว็บที่ไม่ซ้ำกัน ซึ่งชื่อเว็บไซต์เหล่านั้น มีการระบุที่อยู่ซึ่งเรียกว่า URL
เริ่มต้นใช้งานFacebook ทำความรู้จักเฟสบุ๊ค ตอนที่1
เริ่มต้นใช้งานFacebook ทำความรู้จักเฟสบุ๊ค ตอนที่1
   เฟสบุ๊ค Facebook จัดว่าเป็นเว็บไซต์โซเชียลเน็ตเวิร์ดอันดับต้นๆที่มีคนใช้งานเป็นจำนวนมาก เรียกว่าเป็นโลกแห่งสังคมออนไลน์ที่มีผู้คนหลากหลายเชื้อชาติศาสนา
Kaidee.com ชื่อใหม่ของOLX ลงประกาศขายสินค้า | Android Apps
Kaidee.com ชื่อใหม่ของOLX ลงประกาศขายสินค้า | Android Apps
   แอพพลิเคชั่นKaidee.com ชื่อใหม่ของOLX เป็นแอพพลิเคชั่นลงประกาศขายสินค้าและซื้อสินค้าเบ็ดเตล็ดมากมายกว่าหลายพันชิ้น โดยมีหมวดหมู่ตั้งแต่สินค้า
แอพพลิเคชั่นไฟฉาย Super-Bright LED | Android Apps
แอพพลิเคชั่นไฟฉาย Super-Bright LED | Android Apps
   แอพพลิเคชั่นไฟฉาย Super-Bright LED เปิดให้ดาวน์โหลดฟรีโดยAndroid Apps ถือเป็นแอพพลิเคชั่นฉายไฟจากLED เพื่อให้ความสว่างระหว่างทาง พร้อมภาพกราฟฟิกไฟฉาย
โน๊ตบุ๊ค รุ่นต่างๆ กล้องประเภทต่างๆ

วีดีโอน่ารู้ : โปรเจคแบบแปลนบ้านแจกฟรี Project C#


แจกโปรเจคPHPฟรี
การเขียนโปรแกรม >> ภาษา JAVA >> นิพจน์และโครงสร้างควบคุม ของภาษาjava

นิพจน์และโครงสร้างควบคุม ของภาษาjava 

นิพจน์และโครงสร้างควบคุม ของภาษาjava

อัพเดทวันที่: 17 ก.พ. 2557

วีดีโอน่ารู้ : เทคโนโลยีน่ารู้ Ep2 อย่าตั้งรหัสผ่านเดียวกันกับทุกเว็บไซต์ หรือทุกAccount


ไวยากรณ์ภาษาจาวา

สัญลักษณ์และคำที่ใช้ในภาษาจาวาประกอบด้วย

คอมเม็นต์ (comment)           เช่น //  หรือ /*     */

การตั้งชื่อ (identifier)   เช่น ชื่อคลาส ชื่อเมธอด ชื่อตัวแปร หรือชื่อค่าคงที่        

คีย์เวิร์ด (keywords)     คือชื่อที่มีความหมายพิเศษในภาษาจาวา เช่น if   for   ฯลฯ        

สัญลักษณ์แยกคำ (separators)  เช่น  ;     (  )   ,    .   {  }

ช่องว่าง (white space)        เช่น ช่องว่าง  แท็ป  การขึ้นบรรทัดใหม่

ข้อมูลค่าคงที่ (literals)   คำที่ใช้แสดงข้อมูล ที่เป็นตัวเลขจำนวนเต็ม  ตัวเลขทศนิยม ตัวอักขระ  ข้อความ หรือ ค่าทางตรรกะ(boolean)

ชนิดข้อมูลแบบพื้นฐาน

ชนิดข้อมูลในภาษาจาวาแบ่งเป็นสองประเภทใหญ่ๆคือ  ชนิดข้อมูลแบบพื้นฐาน (primitive data type) และชนิดข้อมูลแบบอ้างอิง (reference data type)

ชนิดข้อมูลแบบพื้นฐานแบ่งออกเป็น 4 ประเภทดังนี้
     1.ชนิดข้อมูลตรรกะ (Logical) คือชนิด  boolean
     2.ชนิดข้อมูลอักขระ (Textual) คือชนิด  char
     3.ชนิดข้อมูลตัวเลขจำนวนเต็ม (Integral) คือชนิด  byte,short,int และ long
     4.ชนิดข้อมูลตัวเลขทศนิยม (Floating point) คือชนิด  float และ double
ขนาดและช่วงค่าของชนิดข้อมูลแบบพื้นฐาน

ชนิดข้อมูล ขนาด(บิต) ช่วงค่า
boolean 1 true
char 16 '\u0000' ถึง '\uFFFF'
byte 8 -128 ถึง +127
short 16 -32,768 ถึง +32,767
int 32 -2 ยกกำลัง 31 ถึง +2 ยกกำลัง 31-1
long 64 -2 ยกกำลัง 63 ถึง +2 ยกกำลัง 63-1
float 32 -3.40E +38 ถึง +3.40E+38
double 64 -1.80E+308 ถึง +1.80E+308

ตัวแปรและการกำหนดค่า

-ตัวแปรในภาษาจาวาอาจเป็นตัวแปรที่มีชนิดข้อมูลแบบพื้นฐานหรือชนิดข้อมูลแบบอ้างอิง
-ตัวแปรที่มีชนิดข้อมูลแบบพื้นฐานจะเก็บค่าของตัวแปรในหน่วยความจำ  เช่น int x = 7;
-ตัวแปรที่มีชนิดข้อมูลแบบอ้างอิงจะเก็บตำแหน่งอ้างอิงในหน่วยความจำ เช่น String s = new String(“Thana”);                   

ภาษาจาวาจะกำหนดตำแหน่งอ้างอิงเริ่มต้นให้มีค่าเป็น null โดยอัตโนมัติ ซึ่งเนื้อที่ในหน่วยความจำเพื่อเก็บข้อมูลต่างๆ ของตัวแปรชนิดข้อมูลแบบอ้างอิงจะถูกสร้างขึ้น เมื่อมีการเรียกใช้คำสั่ง new
ตัวอย่าง   คำสั่ง   Date d;   และคำสั่ง  d = new Date(16,8,2002);        

การส่งตัวแปรผ่าน argument

กรณีที่ส่งตัวแปรชนิดข้อมูลแบบพื้นฐานให้กับ argument  การเปลี่ยนแปลงค่าของ argument ในเมธอดจะไม่มีผลกระทบต่อค่าของตัวแปรที่ส่งมา

กรณีที่ส่งตัวแปรชนิดข้อมูลแบบอ้างอิงให้กับ argument จะเป็นการส่งตำแหน่งอ้างอิงให้กับ argument จึงทำให้ค่าของตัวแปรที่ส่งมาจะถูกเปลี่ยน แปลงตาม argument ในเมธอด

ตัวอย่างโปรแกรม

 import java.util.*;

 

 public class ArgumentPassing {

  public void method1(int x) {

  x = 3;

  }

  public void method2(Date d) {

  d.setDate(1);

  d.setMonth(1);

  d.setYear(2002);

  }

  public int method3() {

  return 0;

  }

      

public static void main(String args[]) {

  int x = 4;

  ArgumentPassing obj = new ArgumentPassing();

  Date d1 = new Date(16,12,1980);

  obj.method1(x);

  System.out.println("x = "+x);

  obj.method2(d1);

  System.out.println("Date = "+d1);

  obj.method3();

  }

 }

การแปลงชนิดข้อมูล

การแปลงชนิดข้อมูลมีสองรูปแบบคือ

-การแปลงข้อมูลที่กว้างขึ้น (widening conversion) คือการแปลงจากชนิดข้อมูลที่มีขนาดเล็กกว่าไปเป็นชนิดข้อมูลที่มีขนาดใหญ่กว่า

-การแปลงข้อมูลที่แคบลง (narrowing conversion) คือการแปลงจากชนิดข้อมูลที่มีขนาดใหญ่กว่าไปเป็นชนิดข้อมูลที่มีขนาดเล็กลง ซึ่งอาจมีผลให้เสียความละเอียดของข้อมูลบางส่วนไป

ตัวอย่างของการแปลงชนิดข้อมูล

ภาษาจาวาจะปรับชนิดข้อมูลให้อัตโนมัติ ในกรณีต่อไปนี้

กำหนดค่าชนิดข้อมูลที่เล็กกว่าให้กับตัวแปรชนิดข้อมูลที่ใหญ่กว่าอาทิเช่น

int i = 4;

long l = i;

นิพจน์ i จะถูกปรับชนิดข้อมูลจาก int ให้เป็น long โดยอัตโนมัติ

กำหนดค่าชนิดข้อมูลจำนวนเต็มให้กับจำนวนเลขทศนิยมอาทิเช่น

double x = 3;

นิพจน์ 3 จะถูกปรับชนิดข้อมูลจาก int ให้เป็น double โดยอัตโนมัติ

Typecasting

ภาษาจาวาจะสามารถทำการแปลงชนิดข้อมูล ให้เป็นชนิดข้อมูลที่มีขนาดเล็กลงได้ โดยใช้วิธีการที่เรียกว่า typecasting 

รูปแบบ

                                (targetType) expression

ตัวอย่าง

                                int amount = (int)3.0;

นิพจน์

นิพจน์ คือข้อความที่อาจประกอบด้วยข้อมูลค่าคงที่ ตัวแปร ตัวดำเนินการ และวงเล็บ  นิพจน์ แบ่งเป็น
    1.นิพจน์คณิตศาสตร์ (Arithmetic Expression)
    2.นิพจน์ตรรกศาสตร์ (Logical Expression)

ขอบเขตของตัวแปร

ตัวแปรในภาษาจาวามี 2 ประเภท
     1.ตัวแปรที่เป็นคุณลักษณะของออปเจ็คหรือคุณลักษณะของคลาส
     2.ตัวแปรภายใน
สำหรับค่าคงที่หรือตัวแปรที่อยู่ภายในบล็อกของเมธอด จะมีขอบเขตการใช้งานอยู่ภายในบล็อกเท่านั้น

ค่าเริ่มต้นที่ถูกกำหนดให้อัตโนมัติ

ชนิดข้อมูล ค่าเริ่มต้น
boolean false
byte 0
short 0
int 0
long 0L
float 0.0f
double 0.0
char '\u0000'
คลาส null

ตัวอย่างแสดงขอบเขตของตัวแปร

public class VariableScopeDemo {

  public int i;    // object variable

  public void method1() {

  int j = 4;   // local variable

  int k = 2;   // another local variable 

  }

  public void method2() {

  int j = 0;   //local variable

  System.out.println(i);   // calling an object variable i

//  System.out.println(k);   // illegal

  }

}

ตัวอย่างแสดงตัวแปรภายในและตัวแปรของออปเจ็ค

public class ScopeExample {

                private int i=1;

                public void method1() {

                                int i=4, j=5;

                                this.i = i+j;

                                method2(7);

                }

                public void method2(int i) {

                                int j=8;

                                this.i = i+j;

                }

}

public class TestScoping {

                public static void main(String args[]) {

                                ScopeExample scope = new ScopeExample();

                                scope.method1();

                }

}

ตัวดำเนินการแบบต่างๆ

ตัวดำเนินการทางคณิตศาสตร์ (Arithmetic Operators)

เ้ครื่องหมาย ความหมาย ตัวอย่างนิพจน์
+ บวก a+b
- ลบ a-b
* คูณ a*b
/ หาร a/b
% เศษจากการหาร a%b

ตัวดำเนินการแบบสัมพันธ์ (Relational Operators)

เครื่องหมาย ความหมาย ตัวอย่าง ผลลัพธ์
< น้อยกว่า 3<4 true
<= น้อยกว่าหรือเท่ากับ 3<=4 true
> มากกว่า 3>4 false
>= มากกว่าหรือเท่ากับ 3>=4 false
== เท่ากับ 3==4 false
!= ไม่เท่ากับ 3!=4 true

ตัวดำเนินการทางตรรกศาสตร์ (Logical Operators)

เครื่องหมาย ความหมาย
! กลับค่าทางตรรกะ
&& หรือ & AND ค่าทางตรรกะ
|| หรือ | OR ค่าทางตรรกะ
^ Exclusive-OR ค่าทางตรรกะ

ตัวดำเนินการแบบบิต (Bitwise Operators)

ตัวดำเนินการข้อมูลเชิงบิตของเลขจำนวนเต็ม

ตัวดำเนินการ ความหมาย
~ Complement
& AND
| OR
^ XOR

ตัวดำเนินการแบบ shift บิต

ตัวดำเนินการ ความหมาย
>> signed right shift
>>> unsigned right shift
<< left shift

ตัวดำเนินการของข้อความ

เครื่องหมาย + เป็นตัวดำเนินการที่จะเชื่อมข้อความสองข้อความเข้าด้วยกัน

ตัวถูกดำเนินการ (Operand) ตัวหนึ่งจะต้องเป็นข้อมูลชนิดข้อความ

การที่ตัวถูกดำเนินการอีกตัวหนึ่งไม่ใช่ข้อมูลชนิดข้อความ ตัวถูกดำเนินการจะถูกให้เป็นข้อมูลชนิดข้อความอัตโนมัติ

Tag : นิพจน์และโครงสร้างควบคุม ไวยากรณ์ภาษาจาวา ชนิดข้อมูลแบบพื้นฐาน การแปลงชนิดข้อมูล การส่งตัวแปรผ่าน argument

หน้าหลัก
ความตั้งใจ
กว่าจะเป็นเว็บไซต์
แผนผังเว็บไซต์

คุยกับผู้ทำเว็บไซต์
-เริ่มต้นสาขาวิทยาการคอมพิวเตอร์
ติดตามข่าวสาร กด Like เลย
เกี่ยวกับเรา
e-mail : support@rangforever.com


ได้รับการสนับสนุนโดย


----
รวบรวมข่าวสารไอที เทคนิคการเขียนโปรแกรมภาษาphp css javascript jsp c# แจกโปรแกรมที่เขียน แจกระบบ แจกโค้ดฟังก์ชันต่างๆ สอนการใช้งานโปรแกรมออฟฟิศ word excel โปรแกรมตกแต่ง ตัดต่อ สร้างภาพ adobe photoshop adobe Illustrater จัดเต็มกับความรู้ในเนื้อหาโปรแกรมเมอร์แบบเจาะลึก พร้อมวีดีโอสอนการใช้งานโปรแกรม การเขียนโปรแกรม เพิ่มความรู้ ปูทักษะการเขียนโปรแกรมแบบฟรีๆ พร้อมเรียนรู้ไปกับเราได้ที่ www.rangforever.com