JavaRush /Java blogi /Random-UZ /Java massivlari
articles
Daraja

Java massivlari

Guruhda nashr etilgan

Massivlar

Massiv - bu bir xil turdagi qiymatlarni saqlaydigan ma'lumotlar tuzilmasi. Individual massiv elementiga butun son indeks yordamida kirish mumkin. Masalan, a butun sonlar massivi bo'lsa, u holda a[i] ifodaning qiymati massivdagi i-butun songa teng bo'ladi. Java massivlari - 1Massiv quyidagicha e’lon qilinadi: birinchi navbatda massivning turi, ya’ni massiv tarkibidagi elementlarning turi ko‘rsatiladi, undan keyin bir juft bo‘sh kvadrat qavslar, so‘ngra o‘zgaruvchining nomi ko‘rsatiladi. Masalan, butun sonlardan iborat massivni qanday e’lon qilish mumkin:
int[] a;
Biroq, bu bayonot faqat o'zgaruvchini аhaqiqiy massiv bilan ishga tushirmasdan e'lon qiladi. Massiv yaratish uchun operatordan foydalanishingiz kerak new.
int[] a = new int [100];
Bu operator 100 ta butun sonli massivni yaratadi. Ushbu massivning elementlari 0 dan 99 gacha raqamlangan (1 dan 100 gacha emas). Yaratilgandan so'ng, massivni, masalan, pastadir yordamida to'ldirish mumkin.
int[] а = new int[100];
for (int i = 0; i < 100; i++)
 a[i] = i; //Заполняет массив числами от 0 до 99
Agar siz 100 ta elementdan iborat massiv yaratish orqali elementga а [100](yoki indeksi 0 dan 99 gacha bo‘lgan boshqa elementga) kirishga harakat qilsangiz, dastur to‘xtatiladi, chunki qator indeksi diapazondan tashqarida istisno sodir bo‘ladi. Massivdagi elementlar sonini hisoblash uchun Massiv nomi usulidan foydalaning .length. Masalan,
for (int i = 0; i < a.length; i++, System.out.println(a[i]));
Massiv yaratilgandan so'ng uning hajmini o'zgartirish mumkin emas (garchi siz, albatta, uning alohida elementlarini o'zgartirishingiz mumkin). Agar dasturni bajarish jarayonida massiv hajmini tez-tez o'zgartirish kerak bo'lsa, massivlar ro'yxati deb ataladigan boshqa ma'lumotlar strukturasidan foydalangan ma'qul. Massivni ikki usulda e’lon qilish mumkin:
int[] a;
or
int a[];
int []Ko'pgina Java dasturchilari birinchi uslubni afzal ko'radilar, chunki u massiv turini (butun massiv) o'zgaruvchi nomidan aniqroq ajratib turadi .

Massiv initsializatorlari va nomsiz massivlar

Java-da bir vaqtning o'zida massiv yaratish va uni ishga tushirish imkoniyati mavjud. Mana shunday sintaktik tuzilishga misol:
int[] smallPrimes = {2, 3, 5, 7, 11, 13};
E'tibor bering, bu holda operatordan foydalanishga hojat yo'q new. Bundan tashqari, siz hatto nomsiz massivni ishga tushirishingiz mumkin:
new int[] {16, 19, 23, 29, 31, 37}
Ushbu ifoda xotirani yangi massiv uchun ajratadi va uni jingalak qavslarda ko'rsatilgan raqamlar bilan to'ldiradi. Bunday holda, ularning soni hisoblab chiqiladi va shunga mos ravishda massivning o'lchami aniqlanadi. Ushbu sintaktik konstruktsiyadan yangi o'zgaruvchi yaratmasdan massivni qayta ishga tushirish uchun foydalanish qulay. Masalan, ifoda
smallPrimes = new int{17, 19, 23, 29, 31, 37};
qisqartirilgan ifodadir
int[] anonymous = {17, 19, 23, 29, 31, 37};
smallPrimes = anonymous;
Siz nol o'lchamdagi massivni yaratishingiz mumkin. Bunday massiv bo'sh bo'lib chiqadigan massivni baholovchi usulni yozishda foydali bo'lishi mumkin. Nol uzunlikdagi massiv quyidagicha e'lon qilinadi:
new тип Элементов[]
E'tibor bering, bunday massiv ob'ektga ekvivalent emas null.

Massivlarni nusxalash

Bitta massivni boshqasiga nusxalash mumkin, lekin ikkala o‘zgaruvchi ham bir massivga tegishli bo‘ladi.
int[] luckyNumbers = smallPrimes;
luckyNumbers[5] = 12; //Теперь элемент smallPrimes[5]также equals 12
Natija rasmda ko'rsatilgan. 3.1. Agar siz bitta massivning barcha elementlarini boshqasiga nusxalashingiz kerak bo'lsa, sinfdan arraycopy usulidan foydalanishingiz kerak System. Uning chaqiruvi quyidagicha ko'rinadi:
System.arraycopy(from, fromlndex, to, tolndex, count);
Massiv tonusxalanadigan barcha elementlarni o'z ichiga olishi uchun etarlicha katta bo'lishi kerak. Java massivlari - 2
3.1-rasm. Massivdan nusxa olish
Misol uchun, quyida ko'rsatilgan operatorlar, ularning natijalari rasmda ko'rsatilgan. 3.2, ikkita massiv yarating va keyin birinchi massivning oxirgi to'rtta elementini ikkinchisiga ko'chiring. Nusxa olish manba massividagi ikkinchi pozitsiyadan boshlanadi va ko'chirilgan elementlar uchinchi pozitsiyadan boshlab maqsadli massivga joylashtiriladi.
int[] smallPrimes = {2, 3, 5, 7, 11, 13};
int[] luckyNumbers = {1001, 1002, 1003, 1004, 1005, 1006, 1007};
System.аrrаусору(smallPrimes, 2, luckyNumbers, 3, 4);
for (int i = 0; i < luckyNumbers.length; i++)
System.out.println(i + ": " + luckyNumbers[i]);
Ushbu bayonotlarni bajarish quyidagi natijani beradi.
0: 1001
1: 1002
2: 1003
3: 5
4: 7
5: 11
6: 13
Java massivlari - 3
Guruch. 3.2. Massiv elementlaridan nusxa olish
Java tilidagi massiv C++ tilidagi massivdan sezilarli farq qiladi. Biroq, bu dinamik massivga ko'rsatgich bilan deyarli bir xil. Bu shuni anglatadiki, operator
int[] a = new int[100]; //Java
operatorga teng
int* = new int[100]; //C++,
а не
int a[100]; //C++
Java-da []standart operator indeks o'zgarishlarini tekshiradi. Bundan tashqari, Java-da ko'rsatkich arifmetikasi yo'q - siz massivning keyingi elementiga kirish uchun ko'rsatgichni oshirolmaysiz. Manbaga havola: Java massivlari
Izohlar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION