1. Tur boolean
Avvalambor, Java da juda foydali operator mavjud ekan – if-else. Bu operator qavs ichidagi shart to'g'ri bo'lsa bir blok buyruqlarni, shart noto'g'ri bo'lsa ikkinchi blok buyruqlarni bajaradi.
To'g'ri yoki noto'g'ri bo'lishi mumkin bo'lgan ifodalar bilan ishlash qulay bo'lishi uchun, Java ga maxsus tur qo'shilgan — boolean. Uning asosiy xususiyati shundaki, bu turdagi o'zgaruvchilar faqat ikkita qiymatga ega bo'lishi mumkin: true (haqiqat) va false (yolg‘on).
Har qanday boshqa qiymatlarni boolean turidagi o'zgaruvchilarga tayinlash mumkin emas. Kompilyator imkon bermaydi.
Bunday sodda tur nima uchun kerak?
Gap shundaki, unda mantiqiy ifodalar qiymatlarini saqlash mumkin. Misol:
| Kod | Izoh |
|---|---|
|
Mantiqiy o'zgaruvchi isOK true (haqiqat) qiymatiga ega |
|
Mantiqiy o'zgaruvchi hasError false (yolg‘on) qiymatiga ega |
|
Mantiqiy o'zgaruvchi isSenior true (haqiqat) qiymatini saqlaydi |
|
Mantiqiy o'zgaruvchi hasNewRecord true (haqiqat) qiymatiga ega |
|
Mantiqiy o'zgaruvchi Mantiqiy o'zgaruvchi |
2. Boolean o'zgaruvchilardan foydalanish
Agar boolean o'zgaruvchilari faqat ifodalar natijalarini saqlash uchun bo'lsa, ular unchalik foydali bo'lmas edi. Gap shundaki, boolean o'zgaruvchilarini ishlatish mumkin. Qayerda? Ha, mantiqiy ifodani yozish mumkin bo'lgan hamma joyda.
Misol uchun, mantiqiy o'zgaruvchini if shartiga joylashtirish mumkin:
| Kod | Ekvivalent |
|---|---|
|
|
Bu misolda bunday almashtirishdan katta foyda yo'q, lekin dastur qanchalik katta bo'lsa, shunchalik murakkab shartlar bo'ladi. Tez orada bunga o'zingizni ishontirasiz.
3. Taqqoslash operatorlari
Java da, boshqa dasturlash tillarida bo'lgani kabi, o'zgaruvchilarni bir-biriga taqqoslash tez-tez uchraydi. Va aynan taqqoslash uchun Java da quyidagi operatorlar mavjud:
| Operator | Izoh | Misol |
|---|---|---|
< |
Kamroq | a < 10 |
> |
Ko'proq | b > a |
<= |
Kamroq yoki teng | a <= 10 |
>= |
Ko'proq yoki teng | speed >= max |
== |
Teng | age == 18 |
!= |
Teng emas | time != 0 |
Yuqoridagi operatorlarning har biridan foydalanish natijasi mantiqiy ifoda bo'ladi. Uni boolean turidagi o'zgaruvchiga saqlash yoki if sharti sifatida ishlatish mumkin.
Ikki belgidan iborat bo'lgan operatorlarni ajratish mumkin emas.
Ya'ni bunday kod kompilyatsiya qilinmaydi:
a < = 10
speed > = max
age = = 18
time ! = 0
E'tibor bering, => va =< operatorlari yo'q: faqat <= va >= mavjud. Agar siz a =< 3 deb yozsangiz, kodingiz kompilyatsiya qilinmaydi.
Java da 18 < age < 65 kabi ifodani yozish mumkin emas. Chunki 18 < age ifodasi true yoki false qiymatga ega bo'ladi. true < 65 (turlicha turlar) ifodasi esa taqqoslanishi mumkin emas. Kamida, Java tilida.
Va nima qilish kerak? Bu savolga javobni keyingi darsda topasiz.
GO TO FULL VERSION