Javada oqimni boshqarish, Java If-else va switch operatorlari

|
Javada oqimni boshqarish, Java If-else va switch operatorlari
|
Sana | 08.09.2024 | Hajmi | 186,02 Kb. | | #270620 |
Bog'liq 3-mavzu 2-qism
Javada oqimni boshqarish, Java If-else va switch operatorlari.
Windows tizimlarida ko’p oqimlilikning “birga/bir” modeli tatbiq qilingan. Har bir oqim quyidagilarni o’zida saqlaydi: · oqimning identifikatori (thread id); · registrlar to’plami; · tizimli va foydalanuvchi protseduralari uchun alohida steklar; · oqimning lokal ma’lumotlari uchun xotira maydoni (thread-local storage – TLS). Linux da oqimlar Linux tizimida oqimlar threads emas tasks (topshiriqlar) deyiladi. Oqimlar clone() tizimli chaqiruvida hosil qilinadi. Ushbu tizim chaqiruvi qism vazifasini ota-vazifa (jarayoni) bilan bir xil manzil maydonini bo'lishishiga imkon beradi.
Javada oqimlar
Yuqorida ta'kidlab o'tilganidek, Java til va asosiy kutubxona darajalarida multithreadingni qo'llab-quvvatlaydigan birinchi dasturiy ta'minot ishlab chiqish platformasi. Java-dagi oqimlarni quyidagi usullar bilan yaratish mumkin:
· Thread sinfining kengaytmasi sifatida · Runnable interfeysini amalga oshiradigan sinflar sifatida, unda yagona bitta run usuli mavjud - oqimning bajariladigan qismi.
Java Shart operatorlari. if, if-else
Dasturlashda, eng ko’p ishlatiladigan holatlardan biri shartli operatorlar hisoblanadi, ya’ni biror o’zgaruvchi yoki o’zgarmas yoki obyektning qiymatlariga qarab dastur qay yo’sinda davom etishi hal qilinadi. Bunday holatlarda if else kalit so’zlari yordam beradi.
if ifodalari
if kalit so’zi berilgan shart bajarilgandagina ishlashi kerak bo’lgan kod qismini yozishda qo’llaniladi. Sintaksisi:
if (shartliIfoda) {
// agar shart qanoatlantirilsa, ishlaydigan kod bloki
}
Quyidagi misolda 20 sonini 18 sonidan katta bo’lishini tekshiramiz:
if (20 > 18) {
System.out.println("20 soni 18 sonidan katta");
}
Else ifodalari
else kalit so’zi agar if blokidagi shart bajarilmasa, ishlashi kerak bo’lgan kod qismini yozish uchun ishlatiladi:
if (shartliIfoda) {
// agar shart qanoatlantirilsa, ishlaydigan kod bloki
} else {
// agar shart qanoatlantirilmasa, ishlaydigan kod bloki
}
Quyidagi misolda, agar havo harorati 20C dan yuqori bo’lsa, “Havo iliq!”, aks holda “Havo salqin!” degan xabar chop etamiz:
int havo = 18;
if (havo > 20) {
System.out.println("Havo iliq!");
} else {
System.out.println("Havo salqin!");
}
Yuqoridagi misolda “Havo salqin” xabari chop etiladi.
Else if ifodalar
else if kalit so’zi agar birinchi if ifoda sharti qanoatlanmasa, yana boshqa shart tekshirish uchun ishlatiladi. Sintaksisi quyidagicha:
if (shartliIfoda1) {
// agar shartliIfoda1 qanoatlantirilsa, ishlaydigan kod bloki
} else if (shartliIfoda2) {
// agar shartliIfoda1 qanoatlantirilmasa va shartliIfoda2 qanoatlantirilsa, ishlaydigan kod bloki
} else {
// agar shartliIfoda1 va shartliIfoda2 qanoatlantirilmasa, ishlaydigan kod bloki
}
Ternari operatori
Ternari operatori bu if-else ifodalarning qisqacha ko’rinishi hisoblanadi. Sintaksisiga e’tibor bering.
ozgaruvchi = (shartliIfoda) ? rostbolgandagikodbloki : yolgonbolgandagikodbliki;
Yuqorigi misollardan birini ternary operatori yordamida yozib ko’ramiz:
int havo = 18;
String natija = (havo > 20) ? "Havo iliq!" : "Havo salqin!";
System.out.println(natija);
Ternari operatorini bir nechta shartli ifodalar bilan yozsa ham bo’ladi. Yuqoridagi soatga doir misolni ternary operatori yordamida quyidagicha yozamiz:
int soat = 14;
String natija = (soat < 10) ? “Xayrli tong!” : (soat < 18) ? “Xayrli kun!” : “Xayrli kech!”;
System.out.println(natija);
|
| |