1. Boolean
ประเภท
ดังที่เราได้เห็นแล้ว Java มีif-else
คำสั่ง ที่มีประโยชน์อย่างยิ่ง มันดำเนินการหนึ่งกลุ่มของคำสั่งถ้าเงื่อนไขในวงเล็บเป็นจริงและกลุ่มที่สองของคำสั่งถ้าเงื่อนไขเป็นเท็จ
เพื่อความสะดวกเมื่อทำงานกับนิพจน์ที่สามารถเป็นจริงหรือเท็จ ผู้สร้างของ Java ได้เพิ่มboolean
ชนิด พิเศษ คุณสมบัติหลักคือตัวแปรประเภทนี้สามารถรับค่าได้เพียงสองค่าเท่านั้น: true
และfalse
เป็นไปไม่ได้ที่จะกำหนดค่าอื่นใดให้กับboolean
ตัวแปร คอมไพเลอร์ไม่อนุญาต
และทำไมเราถึงต้องการประเภทดั้งเดิมเช่นนี้?
สิ่งที่ดีคือคุณสามารถใช้มันเพื่อเก็บค่าของนิพจน์เชิงตรรกะ ตัวอย่าง:
รหัส | คำอธิบาย |
---|---|
|
ตัวแปร บูลีนisOK มีค่าtrue |
|
ตัวแปร บูลีนhasError มีค่าfalse |
|
ตัวแปร บูลีนisSenior มีค่าtrue |
|
ตัวแปร บูลีนhasNewRecord มีค่าtrue |
|
ตัวแปร บูลีน ตัวแปร บูลีน |
2. การใช้ตัวแปรบูลีน
ตัวแปรบูลีนจะมีประโยชน์เพียงเล็กน้อยหากสามารถเก็บผลลัพธ์ของนิพจน์เท่านั้น ประเด็นคือคุณสามารถใช้มันได้ ที่ไหน? ทุกที่ที่คุณสามารถเขียนนิพจน์เชิงตรรกะ
ตัวอย่างเช่น คุณสามารถใช้ตัวแปรบูลีนในเงื่อนไขของif
คำสั่ง:
รหัส | เทียบเท่า |
---|---|
|
|
ในตัวอย่างนี้ มีประโยชน์เล็กน้อยจากการแทนที่นี้ แต่เมื่อโปรแกรมมีขนาดใหญ่ขึ้น เงื่อนไขของโปรแกรมจะซับซ้อนมากขึ้น คุณจะมั่นใจในสิ่งนี้ในอนาคตอันใกล้นี้
3. ตัวดำเนินการเปรียบเทียบ
ใน Java เช่นเดียวกับภาษาการเขียนโปรแกรมอื่น ๆ มักจะจำเป็นต้องเปรียบเทียบตัวแปรกับตัวแปรอื่น และ Java มีเพียงตัวดำเนินการที่คุณต้องการทำการเปรียบเทียบ:
โอเปอเรเตอร์ | คำอธิบาย | ตัวอย่าง |
---|---|---|
< |
น้อยกว่า | a < 10 |
> |
มากกว่า | b > a |
<= |
น้อยกว่าหรือเท่ากับ | a <= 10 |
>= |
มากกว่าหรือเท่ากับ | speed >= max |
== |
เท่ากับ | age == 18 |
!= |
ไม่เท่ากัน | time != 0 |
ตัวดำเนินการข้างต้นใช้เพื่อสร้างนิพจน์เชิงตรรกะ ผลลัพธ์สามารถเก็บไว้ในboolean
ตัวแปรหรือใช้เป็นเงื่อนไขของif
คำสั่ง
ตัวดำเนินการที่ประกอบด้วยอักขระสองตัวไม่สามารถแยกออกจากกันได้
กล่าวอีกนัยหนึ่ง โค้ดเช่นนี้จะไม่คอมไพล์:
a < = 10
speed > = max
age = = 18
time ! = 0
โปรดทราบว่าไม่มี=>
หรือ=<
ตัวดำเนินการ เฉพาะตัวดำเนินการ<=
และ >=
หากคุณเขียนโค้ดของคุณจะไม่ถูกคอมไพล์a=< 3
ใน Java คุณไม่สามารถเขียนนิพจน์เช่น. ท้ายที่สุด นิพจน์จะถูกประเมินเป็นหรือ และคุณไม่สามารถทำการเปรียบเทียบได้(ประเภทต่างกัน) อย่างน้อยก็ใน Java18 < age < 65
18 < age
true
false
true < 65
ทำอะไรได้บ้าง? คุณจะพบคำตอบสำหรับคำถามนี้ในบทเรียนถัดไป
GO TO FULL VERSION