5. If, Else va Switch¶
Dastur ba'zan vaziyatga qarab turli ishlarni bajarishi kerak.
Masalan:
Agar yosh 18 yoki undan katta bo‘lsa → Kirish mumkin.
Aks holda → Kirish mumkin emas.
Bunday qarorlarni Java'da if, else va switch yordamida yozamiz.
if¶
if — "agar" degan ma'noni anglatadi.
Masalan:
int yosh = 20;
if (yosh >= 18) {
System.out.println("Siz voyaga yetgansiz.");
}
Bu yerda:
yosh >= 18
sharti tekshiriladi.
Agar shart true bo‘lsa, { } ichidagi kod ishlaydi.
Natija:
Siz voyaga yetgansiz.
Agar shart noto‘g‘ri bo‘lsa¶
Masalan:
int yosh = 15;
if (yosh >= 18) {
System.out.println("Siz voyaga yetgansiz.");
}
Bu safar shart:
15 >= 18
false.
Shuning uchun hech narsa chiqarilmaydi.
else¶
Agar if sharti noto‘g‘ri bo‘lsa, boshqa kodni ishlatish uchun else dan foydalanamiz.
Masalan:
int yosh = 15;
if (yosh >= 18) {
System.out.println("Kirish mumkin.");
} else {
System.out.println("Kirish mumkin emas.");
}
Natija:
Kirish mumkin emas.
if va else qanday ishlaydi?¶
Oddiy ko‘rinishi:
if (shart) {
// shart rost bo‘lsa
} else {
// shart noto‘g‘ri bo‘lsa
}
Masalan:
int son = 10;
if (son > 0) {
System.out.println("Musbat son");
} else {
System.out.println("Musbat emas");
}
else if¶
Ba'zan ikkitadan ko‘p variant bo‘ladi.
Bunday holatda else if ishlatamiz.
Masalan:
int ball = 80;
if (ball >= 90) {
System.out.println("A");
} else if (ball >= 80) {
System.out.println("B");
} else if (ball >= 70) {
System.out.println("C");
} else {
System.out.println("D");
}
Natija:
B
Java shartlarni yuqoridan pastga tekshiradi.
Birinchi rost shart topilganda, shu blok ishlaydi.
Bir nechta else if¶
Masalan:
int yosh = 25;
if (yosh < 13) {
System.out.println("Bola");
} else if (yosh < 18) {
System.out.println("O‘smir");
} else if (yosh < 60) {
System.out.println("Katta");
} else {
System.out.println("Keksa");
}
Natija:
Katta
if ichida if¶
Bir if ichida boshqa if bo‘lishi mumkin.
Masalan:
int yosh = 20;
boolean hujjat = true;
if (yosh >= 18) {
if (hujjat) {
System.out.println("Kirish mumkin.");
}
}
Bu nested if deyiladi.
Hozircha bunday kodni ko‘p ishlatish shart emas.
Ko‘p hollarda && bilan ham yozish mumkin:
if (yosh >= 18 && hujjat) {
System.out.println("Kirish mumkin.");
}
switch¶
Bir nechta aniq variantlar bilan ishlash uchun switch ishlatilishi mumkin.
Masalan, hafta kunlari:
int kun = 2;
switch (kun) {
case 1:
System.out.println("Dushanba");
break;
case 2:
System.out.println("Seshanba");
break;
case 3:
System.out.println("Chorshanba");
break;
default:
System.out.println("Bunday kun yo‘q");
}
Natija:
Seshanba
case¶
case qiymatni tekshiradi.
Masalan:
case 1:
agar kun qiymati 1 bo‘lsa, shu qism ishlaydi.
break¶
break switch dan chiqish uchun ishlatiladi.
Masalan:
case 1:
System.out.println("Dushanba");
break;
break bo‘lmasa, Java keyingi case larni ham bajarishi mumkin.
Shuning uchun odatda har bir case oxirida break yoziladi.
default¶
Agar hech bir case mos kelmasa, default ishlaydi.
Masalan:
int kun = 10;
switch (kun) {
case 1:
System.out.println("Dushanba");
break;
case 2:
System.out.println("Seshanba");
break;
default:
System.out.println("Noto‘g‘ri kun");
}
Natija:
Noto‘g‘ri kun
if yoki switch?¶
if turli shartlar bilan ishlash uchun qulay.
Masalan:
if (yosh >= 18) {
...
}
switch esa aniq qiymatlar bilan ishlashda qulay.
Masalan:
switch (kun) {
case 1:
...
break;
}
Oddiy amaliy misol¶
Foydalanuvchining bahosini tekshiramiz.
int ball = 75;
if (ball >= 90) {
System.out.println("A'lo");
} else if (ball >= 70) {
System.out.println("Yaxshi");
} else if (ball >= 50) {
System.out.println("Qoniqarli");
} else {
System.out.println("Yiqildi");
}
Natija:
Yaxshi
Hayotiy misol¶
Tasavvur qiling, do‘konda chegirma bor.
int yosh = 15;
if (yosh < 18) {
System.out.println("20% chegirma");
} else {
System.out.println("10% chegirma");
}
Dastur yoshga qarab qaror qabul qiladi.
Amaliy mashqlar¶
1-mashq¶
Sonning musbat yoki manfiy ekanligini if yordamida aniqlang.
2-mashq¶
Foydalanuvchining yoshini tekshiring.
Agar:
18 yoki undan katta
bo‘lsa:
Kirish mumkin.
Aks holda:
Kirish mumkin emas.
chiqsin.
3-mashq¶
Ballga qarab baho chiqaring:
90–100 → A
80–89 → B
70–79 → C
60–69 → D
0–59 → F
4-mashq¶
switch yordamida hafta kunini aniqlang.
Masalan:
1 → Dushanba
2 → Seshanba
3 → Chorshanba
va hokazo.
5-mashq¶
switch yordamida oddiy kalkulyator yarating.
Masalan:
+ → qo‘shish
- → ayirish
* → ko‘paytirish
/ → bo‘lish
Muhim narsalarni eslab qoling¶
if — shartni tekshiradi.
else — if noto‘g‘ri bo‘lganda ishlaydi.
else if — qo‘shimcha shartlarni tekshiradi.
switch — bir nechta aniq variant bilan ishlash uchun qulay.
case — switch ichidagi variant.
break — switch dan chiqadi.
default — hech bir variant mos kelmaganda ishlaydi.
Keyingi bobda for, while va do-while yordamida kodni qayta-qayta bajarishni o‘rganamiz.