ตัวแปรและชนิดข้อมูล

0
2351

          การเรียนรู้เกี่ยวกับภาษาของคอมพิวเตอร์ไม่ว่าจะภาษาใด เราจำเป็นจะต้องเรียนรู้เกี่ยวกับองค์ประกอบพื้นฐานนั่นคือ ตัวแปร การกำหนดค่าตัวแปร ตลอดจนเครื่องหมายดำเนินการต่างๆ


ตัวแปรในภาษาโปรแกรม

          ตัวแปรในภาษาโปรแกรม หมายถึงชื่อที่ใช้อ้างอิงถึงข้อมูลใดๆ บนหน่วยความจำ ซึ่งอาจจะสามารถเปลี่ยนแปลงได้ ลักษณะตัวแปรในภาษาโปรแกรมนั้นขึ้นอยู่กับภาษานั้นๆ แต่ส่วนใหญ่จะมีความคล้ายคลึง โดยปกติแล้วจะต้องมีการประกาศให้ทราบก่อนว่าจะมีตัวแปรนี้เกิดขึ้น การประกาศนั้นจะมีรูปแบบคล้ายๆ กัน ดังนี้

รูปแบบการกำหนดตัวแปร ตัวอย่าง
ชนิดของตัวแปร ชื่อของตัวแปร = ค่าของตัวแปร; string color;
string color = “Blue”;
int A;
int A = 4;



กฏเกณฑ์ในการตั้งชื่อตัวแปร

1) ประกอบด้วยตัวเลข ตัวอักษร(letter), เครื่องหมาย _ (Underscore) หรือ เครื่องหมาย $ (Dollar sign)

2) ต้องขึ้นต้นด้วยตัวอักษรและห้ามเว้นวรรค

3) ไม่สามารถใช้สัญลักษณ์พิเศษอื่น เช่น +, -, *, &, %, # ฯลฯ เป็นส่วนประกอบอยู่ภายในชื่อได้

4) สามารถตั้งชื่อให้มีความยาวเท่าใดก็ได้

5) ไม่สามารถใช้ คำสงวน(Reserved word)

6) ตัวอักษรตัวใหญ่และตัวเล็ก ถือว่ามีความแตกต่างกัน



คำสงวน (Reserved Words)

abstract, assert, boolean, break, byte, case, catch, char, class, const, continue, default, do, double, else, enum, extends, final, finally, float, for, goto, if, implements, import, instanceof, int, interface, long, native, new, package, private, protected, public, return, short, static, strictfp, super, switch, synchronized, this, throw, throws, transient, try, void, volatile, while



ชนิดของข้อมูล (Data Type)

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

ชนิดข้อมูลแบบพื้นฐาน (primitive data type) หมายถึงชนิดข้อมูลที่สามารถเก็บข้อมูลที่เป็นข้อมูลทั่วไปหรือข้อมูลพื้นฐาน มีทั้งหมด 8 ตัว ได้แก่ boolean, char, byte, short, int, long, float,double

ชนิดข้อมูลแบบอ้างอิง (reference data type) มีความแตกต่างกับชนิดข้อมูลพื้นฐาน ที่ว่าชนิดข้อมูลชนิดนี้อยู่ในรูปแบบหนึ่ง ซึ่งการเข้าถึง(ใช้งาน)ข้อมูลเป็นการอ้างถึง มากกว่าการเข้าถึงข้อมูลโดยตรง เก็บข้อมูลไว้ 2 ส่วน คือ

– Execution Stack เก็บค่าอ้างอิงที่ชี้ไปยัง Heap memory

– Heap Memory เก็บข้อมูลที่เรียกว่าออปเจ็ค ที่สร้างขึ้นมาจากคลาส

ชนิดข้อมูล ขนาด (bit) ค่าที่เก็บได้
boolean JVM กำหนด true หรือ false
byte 8 -128 ถึง 127
short 16 -32768 ถึง 32767
int 32 -2147483648 ถึง 2147483648
long 64 -9223372036854775808 ถึง 9223372036854775808
float 32 -3.4E38 ถึง 3.4E38
double 64 -1.7E308 ถึง 1.7E308
char 16 ใช้เก็บอักขระที่มีรหัสตั้งแต่ 0 ถึง 65535



การเขียนคอมเมนต์

ในภาษาจาวา มี 3 ประเภทคือ

1. คอมเมนต์บรรทัดเดียว โดยใช้เครื่องหมาย //

2. คอมเมนต์หลายบรรทัด เริ่มด้วย /* และจบด้วย */

3. คอมเมนต์แบบอกสารประกอบโปรแกรมเริ่มด้วย /** จบด้วย */



เครื่องหมายการคำนวณทางคณิตศาสตร์

          การดำเนินการพื้นฐานที่สุดทั้งในชีวิตประจำวันและในการเขียนโปรแกรมคือ การคำนวณทางคณิตศาสตร์ โดยเครื่องหมายที่ใช้สำหรับการคำนวณทางคณิตศาสตร์ใช้ภาษา C สรุปดังนี้

เครื่องหมาย ความหมาย ตัวอย่าง
+ บวก 3+2  การบวกเลข 3 บวกกับ 2 ได้ผลลัพธ์คือ 5
ลบ 3 – 2 การลบเลข 3 ลบกับ 2 ได้ผลลัพธ์คือ 1
* คูณ 2*3   การคูณเลข 3 บวกกับ 2 ได้ผลลัพธ์คือ 6
/ หาร 15/2  การหาร 15 หารกับ 2 ได้ผลลัพธ์คือ 7
% หารเอาเศษ 15%2การหารเอาเศษ 15 หารกับ 2 ได้ผลลัพธ์คือ 1
++ เพิ่มค่าขึ้น 1 โดย 
a++ จะนำค่าของ a ไปใช้ก่อนแล้วจึงเพิ่มค่าของ a ขึ้น 1

  ++a จะเพิ่มค่าของ a ขึ้น 1 ก่อนแล้วจึงนำค่าของ a ไปใช้
b=a++;
จะมีความหมายเทียบเท่ากับ 2 บรรทัดต่อไปนี้
b=a;
a=a+1;

b=++a;
จะมีความหมายเทียบเท่ากับ 2 บรรทัดต่อไปนี้
a=a+1;
b=a;
ลดค่า 1 โดย
a– จะนำค่าของ a ไปใช้ก่อน แล้วจึงลดค่าของ a ลง 1



–a จะลดค่าของ a ลง 1 ก่อน แล้วจึงนำค่าของ a ไปใช้
ิb=a–;
จะมีความหมายเทียบเท่ากับ 2 บรรทัดต่อไปนี้
ิb=a;
a=a-1;

b=–a;
จะมีความหมายเทียบเท่ากับ 2 บรรทัดต่อไปนี้
a=a-1;
b=a;



เครื่องหมายการเปรียบเทียบ

          ใช้เปรียบเทียบค่า 2 ค่าเพื่อแสดงการเลือก ซึ่งโปรแกรมโดยทั่วไปใช้ในการทดสอบเงื่อนไขตามที่กำหนดการเปรียบเทียบโดยการเท่ากันของ 2 ค่าจะใช้เครื่องหมาย ==

เครื่องหมาย ความหมาย ตัวอย่าง
มากกว่า a > b   a มากกว่า b
>== มากกว่าหรือเท่ากับ a >= b a มากกว่าหรือเท่ากับ b
น้อยกว่า a < b   a น้อยกว่า b
<== น้อยกว่าหรือเท่ากับ a <= b a น้อยกว่าหรือเท่ากับ b
== เท่ากับ a == b a เท่ากับ b
!= ไม่เท่ากับ a != b  a ไม่เท่ากับ b



เครื่องหมายทางตรรกศาสตร์

เครื่องหมายทางตรรกศาสตร์เป็นการหาผลลัพธ์โดยใช้หลักการทางตรรกศาสตร์ ส่วนใหญ่มักใช้ในระบบคอมพิวเตอร์หรือระบบเกี่ยวกับวงจรไฟฟ้า โดยเครื่องหมายทางตรรกศาสตร์ที่ใช้ในการเขียนโปรแกรมภาษาซี มีอยู่ 3 ชนิด คือ && (and), || (or) และ! (not)

ผลลัพธ์จากการดำเนินการทางตรรกศาสตร์โดยใช้เครื่องหมายทั้ง 3 ชนิด แสดงดังตารางต่อไปนี้โดยกำหนดให้ T แทนค่าที่เป็นจริง และ F แทนค่าที่เป็นเท็จ

x y x&&y x||y !x
T T T T F
T F F T F
F T F T T
F F F F T




แบบฝึกหัด

กำหนดให้ x=10 , y=5 และ z=3 จงเขียนโปรแกรมเพื่อหาค่าเฉลี่ยของ x,y,z





อ้างอิง

อรรถพร สุขใส, “3.ชนิดของข้อมูล,ตัวแปร,และค่าคงที”, https://sites.google.com/site/javabasiceaw/3 สืบค้นวันที่ 26 ก.ย. 60

MarcusCode, “ตัวแปรและประเภทข้อมูล”, http://marcuscode.com/lang/java/variables-and-types สืบค้นวันที่ 26 ก.ย. 60

Varavut Lormongkol, “ตัวแปร? คืออะไร???”, https://2bedev.com/what-is-variable/ สืบค้นวันที่ 26 ก.ย. 60