Delegate void Message


Download 184.94 Kb.
bet6/11
Sana16.06.2023
Hajmi184.94 Kb.
#1516542
1   2   3   4   5   6   7   8   9   10   11
Bog'liq
Amaliyot ishi Dasturlash texnologiyalari

Massivlar.
Massiv bir xil turdagi qiymatlar to'plamini ifodalaydi. Massivni e'lon qilish bitta qiymatni saqlaydigan oddiy o'zgaruvchini e'lon qilishga o'xshaydi va massivni e'lon qilishning ikki yo'li mavjud:
ma'lumotlar_turi massiv_nomi[];
// yoki
ma'lumotlar_turi[] massiv_nomi;
Masalan, raqamlar qatorini aniqlaymiz:
int nums[];
int[] nums2;
Massivni e'lon qilgandan so'ng, biz uni ishga tushirishimiz mumkin:
int nums[];
nums = new int[4]; // 4 ta sondan iborat massiv
Massiv quyidagi konstruksiya yordamida yaratiladi: yangi maʼlumotlar_turi[elementlar_soni], bu yerda new — qavs ichida koʻrsatilgan elementlar soniga xotira ajratuvchi kalit soʻz. Masalan, nums = new int[4]; - bu ifoda to'rtta int elementli massivni yaratadi va har bir element standart qiymatga ega bo'ladi - 0 raqami.
Bundan tashqari, massivni e'lon qilishda darhol ishga tushirishingiz mumkin:
int nums[] = new int[4];
int[] nums2 = new int[5];
Ushbu ishga tushirish bilan barcha massiv elementlari standart qiymatga ega. Raqamli turlar uchun (jumladan, char turi) bu raqam 0, mantiqiy tip uchun bu noto'g'ri, boshqa ob'ektlar uchun esa null. Misol uchun, int turi uchun standart qiymat 0 raqamidir, shuning uchun yuqorida aniqlangan nums massivi to'rtta noldan iborat bo'ladi.
Biroq, massiv yaratilganda uning elementlari uchun maxsus qiymatlarni o'rnatish ham mumkin:
// bu ikki usul ekvivalent
int[] nums = new int[] { 1, 2, 3, 5 };
int[] nums2 = { 1, 2, 3, 5 };
Shuni ta'kidlash kerakki, bu holda massivning o'lchami kvadrat qavs ichida ko'rsatilmaydi, chunki u jingalak qavs ichidagi elementlarning soni bilan hisoblanadi.
Massivni yaratgandan so'ng, biz uning istalgan elementiga indeks bo'yicha murojaat qilishimiz mumkin, bu esa massiv o'zgaruvchisi nomidan keyin kvadrat qavs ichida beriladi:
int[] nums = new int[4];
// massiv elementi qiymatlarini o'rnatish
nums[0] = 1;
nums[1] = 2;
nums[2] = 4;
nums[3] = 100;
// massivning uchinchi elementi qiymatini olish
System.out.println(raqamlar[2]); // 4
Massivni indekslash 0 dan boshlanadi, shuning uchun bu holda massivdagi to'rtinchi elementga murojaat qilish uchun nums[3] ifodasini ishlatishimiz kerak.
Va bizning massivimiz faqat 4 ta element uchun aniqlanganligi sababli, masalan, oltinchi elementga murojaat qila olmaymiz: nums[5] = 5;. Agar shunday qilishga harakat qilsak, xatoga yo'l qo'yamiz.
Massivlarga ega bo'lgan eng muhim xususiyat bu uzunlik xususiyati bo'lib, u massiv uzunligini, ya'ni uning elementlari sonini qaytaradi:
int[] nums = {1, 2, 3, 4, 5};
int length = nums.length; // 5
Oxirgi indeks noma'lum bo'lishi odatiy hol emas va massivning oxirgi elementini olish uchun biz ushbu xususiyatdan foydalanishimiz mumkin:
int last = nums[nums.length-1];
Ilgari biz bir xil turdagi qiymatlar zanjiri yoki qatori sifatida ifodalanishi mumkin bo'lgan bir o'lchovli massivlarni ko'rib chiqdik. Ammo bir o'lchovli massivlardan tashqari ko'p o'lchovli massivlar ham mavjud. Eng mashhur ko'p o'lchovli massiv ikki o'lchovli massivni ifodalovchi jadvaldir:
int[] nums1 = new int[] { 0, 1, 2, 3, 4, 5 };
int[][] nums2 = { { 0, 1, 2 }, { 3, 4, 5 } };
Vizual ravishda ikkala massivni quyidagicha ko'rsatish mumkin:
Bir o'lchovli massiv nums1

Ikki o’lchamli massiv nums2

nums2 massivi ikki o'lchovli bo'lgani uchun u oddiy jadvaldir. U shunday yaratilishi ham mumkin edi: int[][] nums2 = new int[2][3];. Kvadrat qavslar soni massiv hajmini bildiradi. Qavslar ichidagi raqamlar esa - qatorlar va ustunlar soni. Shuningdek, indekslardan foydalanib, dasturda massiv elementlaridan foydalanishimiz mumkin:
nums2[1][0]=44;
System.out.println(nums2[1][0]);
Uch o'lchovli massiv deklaratsiyasi quyidagicha ko'rinishi mumkin:
int[][][] nums3 = new int[2][3][4];
Ko'p o'lchovli massivlarni "qirrali massivlar" sifatida ham ko'rsatish mumkin. Yuqoridagi misolda ikki o'lchovli massivda 2 qator va uchta ustun bor edi, shuning uchun biz tekis jadvalga ega bo'ldik. Ammo biz ikki o'lchovli massivdagi har bir elementga turli xil elementlar soniga ega alohida massivni belgilashimiz mumkin:
int[][] nums = new int[3][];
nums[0] = new int[2];
nums[1] = new int[3];
nums[2] = new int[5];
For tsiklining maxsus versiyasi massivlar va to'plamlar kabi elementlar to'plamidagi elementlarni takrorlash uchun mo'ljallangan. Bu boshqa dasturlash tillarida topilgan foreach tsikliga o'xshaydi. Rasmiy deklaratsiya:
for (o'zgaruvchi_nomi ma'lumotlar turi: konteyner){
// harakatlar
}
Masalan:
int[] array = new int[] { 1, 2, 3, 4, 5 };
for (int i : array){
System.out.println(i);
}
Bu holda konteyner int tipidagi ma'lumotlar massividir. Keyin o'zgaruvchi int turi bilan e'lon qilinadi
For ning oddiy versiyasi bilan ham xuddi shunday qilish mumkin:
int[] array = new int[] { 1, 2, 3, 4, 5 };
for (int i = 0; i < array.length; i++){
System.out.println(array[i]);
}
Shu bilan birga, for siklining bu versiyasi for (int i : massiv) ga qaraganda ancha moslashuvchan. Xususan, ushbu versiyada biz elementlarni o'zgartirishimiz mumkin:
int[] array = new int[] { 1, 2, 3, 4, 5 };
for (int i=0; iarray[i] = array[i] * 2;
System.out.println(array[i]);
}
Ko'p o'lchovli massivlarni tsiklda takrorlash
int[][] nums = new int[][]
{
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
for (int i = 0; i < nums.length; i++){
for(int j=0; j < nums[i].length; j++){
System.out.printf("%d ", nums[i][j]);
}
System.out.println();
}
Birinchidan, qatorlar bo'ylab takrorlash uchun tsikl yaratiladi, so'ngra birinchi tsikl ichida ma'lum bir qator ustunlari ustida takrorlash uchun ichki tsikl yaratiladi. Xuddi shunday, siz ko'p sonli o'lchamli uch o'lchovli massivlar va to'plamlarni takrorlashingiz mumkin.


Download 184.94 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10   11




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling