JavaRush /Java Blog /Random-TK /Java massiwleri
articles
Dereje

Java massiwleri

Toparda çap edildi

Toplumlar

Bir massiw, şol bir görnüşdäki bahalary saklaýan maglumat gurluşydyr. Aýry-aýry massiw elementlerine bitewi görkeziji ulanylýar. Mysal üçin, eger bitewi sanlar toplumy bolsa, onda [i] aňlatmanyň bahasy massiwdäki i-nji bitewi san bilen deňdir. Java massiwleri - 1Bir massiw aşakdaky ýaly yglan edilýär: ilki bilen, massiwiň görnüşi görkezilýär, ýagny massiwdäki elementleriň görnüşi, soň bir jübüt boş kwadrat ýaý, soň bolsa üýtgeýjiniň ady görkezilýär. Mysal üçin, bitewi sanlardan ybarat bir massiwi nädip yglan etmeli:
int[] a;
аŞeýle-de bolsa, bu jümle diňe hakyky massiw bilen başlamazdan üýtgeýjini yglan edýär . Bir massiw döretmek üçin operatory ulanmaly new.
int[] a = new int [100];
Bu operator 100 sany bitewi san döredýär. Bu massiwiň elementleri 0-dan 99-a çenli (1-den 100-e çenli däl) sanlanýar. Döredilenden soň, massiw, mysal üçin, aýlaw ulanyp doldurylyp bilner.
int[] а = new int[100];
for (int i = 0; i < 100; i++)
 a[i] = i; //Заполняет массив числами от 0 до 99
а [100]100 elementden ybarat bir massiw döredip, bir elemente (ýa-da indeksi 0 bilen 99 aralygyndaky başga bir elemente) girmäge synanyşsaňyz , programma bes ediler, sebäbi aralyk kadadan çykma massiw görkezijisi ýüze çykar. Bir massiwdäki elementleriň sanyny sanamak üçin, Array ady usulyny ulanyň .length. Mysal üçin,
for (int i = 0; i < a.length; i++, System.out.println(a[i]));
Bir massiw döredilenden soň, onuň ululygyny üýtgetmek mümkin däl (elbetde, aýry-aýry elementlerini üýtgedip bilersiňiz). Programma ýerine ýetirilende ýygy-ýygydan bir massiwiň ululygyny üýtgetmeli bolsaňyz, massiw sanawy diýilýän başga bir maglumat gurluşyny ulanmak has gowudyr. Bir massiw iki görnüşde yglan edilip bilner:
int[] a;
or
int a[];
int []Java programmaçylarynyň köpüsi birinji stili halaýarlar, sebäbi massiw görnüşini (bitewi massiw) üýtgeýän adyndan has aýdyňlaşdyrýar .

Array başlangyçlary we ady aýdylmadyk massiwler

Java-da bir wagtyň özünde bir massiw döretmek we başlamak üçin desga bar. Ine, şeýle sintaktik gurluşyň mysaly:
int[] smallPrimes = {2, 3, 5, 7, 11, 13};
Bu ýagdaýda operatory ulanmagyň zerurlygynyň ýokdugyna üns beriň new. Mundan başga-da, ady agzalmadyk massiwi başlap bilersiňiz:
new int[] {16, 19, 23, 29, 31, 37}
Bu aňlatma täze massiw üçin ýady bölýär we egri ýaýlarda görkezilen sanlar bilen doldurýar. Bu ýagdaýda olaryň sany hasaplanýar we şoňa görä massiwiň ululygy kesgitlenýär. Bu sintaktik gurluşyk, täze üýtgeýjini döretmän bir massiwi täzeden başlamak üçin ulanmak üçin amatly. Mysal üçin, aňlatma
smallPrimes = new int{17, 19, 23, 29, 31, 37};
gysgaldylan aňlatma
int[] anonymous = {17, 19, 23, 29, 31, 37};
smallPrimes = anonymous;
Nol ululykdaky massiw döredip bilersiňiz. Şeýle massiw, boş bolup çykýan bir massiw bahalandyrýan usul ýazylanda peýdaly bolup biler. Nol uzynlykdaky massiw aşakdaky ýaly yglan edilýär:
new тип Элементов[]
Şeýle massiwiň bir obýekte deň däldigine üns beriň null.

Toplumlary göçürmek

Bir massiw beýlekisine göçürilip bilner, ýöne iki üýtgeýji şol bir massiwde görkeziler.
int[] luckyNumbers = smallPrimes;
luckyNumbers[5] = 12; //Теперь элемент smallPrimes[5]также equals 12
Netije suratda görkezilýär. 3.1. Bir massiwiň ähli elementlerini beýlekisine göçürmek zerur bolsa, synpdan massiw usulyny ulanmaly System. Çagyryşy şeýle:
System.arraycopy(from, fromlndex, to, tolndex, count);
Bu massiw togöçürilmeli ähli elementleri öz içine alýan derejede uly bolmaly. Java massiwleri - 2
3-nji surat. Bir massiw göçürmek
Mysal üçin, netijeleri aşakda görkezilen operatorlar, netijeleri suratda görkezilýär. 3.2, iki massiw dörediň we birinji massiwiň soňky dört elementini ikinjisine göçüriň. Göçürmek çeşme massiwindäki ikinji pozisiýadan başlaýar we göçürilen elementler üçünji ýerden başlap maksat massiwine ýerleşdirilýär.
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]);
Bu jümleleri ýerine ýetirmek aşakdaky netijäni berýär.
0: 1001
1: 1002
2: 1003
3: 5
4: 7
5: 11
6: 13
Java massiwleri - 3
Tüwi. 3.2. Array elementlerini göçürmek
Java-daky bir massiw, C ++ massiwinden ep-esli tapawutlanýar. Şeýle-de bolsa, dinamiki massiwiň görkezijisi bilen diýen ýaly deňdir. Bu operatoryň diýmekdir
int[] a = new int[100]; //Java
operatoryna deňdir
int* = new int[100]; //C++,
а не
int a[100]; //C++
Java-da []deslapky operator indeks üýtgemeleriniň diapazonyny barlaýar. Mundan başga-da, Java-da görkeziji arifmetikasy ýok - massiwiň indiki elementine girmek üçin görkezijini artdyryp bilmersiňiz. Çeşmä baglanyşyk: Java massiwleri
Teswirler
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION