CodeGym /Blog Jawa /Acak /Array ing Jawa
John Squirrels
tingkat
San Francisco

Array ing Jawa

Diterbitake ing grup
Mbayangno lemari ing kamar panyimpenan. Saben wong duwe nomer dhewe, lan saben wong nyimpen sawetara obyek Baggage. Utawa dhaptar anggur ing ngendi saben jinis anggur diwenehi nomer lan sampeyan pesen kanthi menehi nomer ngombe. Utawa dhaptar siswa sing "Adams" direkam ing posisi pisanan lan "Zimmer" pungkasan. Utawa dhaptar penumpang ing pesawat, sing saben wong diwenehi kursi nomer. Ing Jawa, array asring digunakake kanggo nggarap struktur kasebut, yaiku kumpulan data homogen.

Array ing kursus CodeGym

Ing CodeGym, sampeyan miwiti nggarap array ing Level 7 saka pencarian Java Syntax. Telung pelajaran dikhususake kanggo dheweke, uga 8 tugas ing macem-macem level kanggo nggabungake katrampilan sampeyan nggarap array. Nanging sampeyan bakal nemoni array kaping pirang-pirang sajrone kursus (khususe, kelas Array bakal disinaoni ing pencarian Java Collections lan minangka bagean saka karya sampeyan ing mangsa ngarep.

Apa iku array?

Array minangka struktur data sing nyimpen unsur saka jinis sing padha. Sampeyan bisa nganggep minangka sakumpulan sel nomer. Sampeyan bisa nyelehake sawetara data ing saben sel (siji unsur data saben sel). A sel tartamtu diakses nggunakake nomer. Nomer unsur ing larik uga disebut indeks . Ing Jawa, array iku homogen, yaiku kabeh sel ngemot unsur saka jinis sing padha. Mangkono, array saka integer mung ngemot integer ( int ), array saka strings - mung strings, lan Uploaded kedadean saka kelas Dog sing wis digawe mung bakal ngemot obyek Dog . Ing tembung liyane, Jawa ora ngidini kita sijine integer ing sel pisanan array, String ing kaloro, lan Dog ing katelu.Larik ing basa Jawa - 2

Nerangake array

Kepiye carane sampeyan ngumumake array?

Kaya variabel apa wae, array kudu diumumake ing Jawa. Iki bisa ditindakake kanthi salah siji saka rong cara. Padha padha, nanging cara pisanan luwih konsisten karo gaya Jawa. Kapindho minangka warisan saka basa C: akeh programer C pindhah menyang Jawa, lan cara alternatif disimpen kanggo penak. Tabel kasebut nuduhake loro cara kanggo ngumumake array ing Jawa:
Ora. Deklarasi array, sintaks Jawa Tuladha Komentar
1.
dataType[] arrayName;

int[] myArray;

Object[] 
arrayOfObjects;  
Disaranake kanggo ngumumake array kanthi cara iki. Iki gaya Jawa.
2.
dataType arrayName[];

int myArray[];

Object 
arrayOfObjects[];
Cara deklarasi array sing diwarisake saka C/C++, dianggo ing Jawa
Ing kasus kasebut, dataType minangka jinis variabel ing array. Ing conto, kita ngumumake rong array. Siji bakal nyimpen int s, lan liyane - Obyek obyek. Dadi, deklarasi array nduweni jeneng lan jinis (jinis unsur array). ArrayName minangka jeneng array.

Nggawe larik

Kepiye carane nggawe array?

Kaya obyek liyane, sampeyan bisa nggawe array Jawa, IE cadangan panggonan ing memori kanggo, nggunakake operator anyar . Mangkene carane ditindakake:

new typeOfArray[length]; 
ing ngendi typeOfArray minangka jinis array lan dawa minangka dawa (yaiku jumlah sel) sing dituduhake minangka nomer wutuh ( int). Nanging elinga yen ing kene kita mung ngalokasi memori kanggo array - kita durung ngubungake array sing diumumake karo variabel sing diumumake sadurunge. Biasane, array pisanan diumumake lan banjur instantiated, contone:

int[] myArray; // Array declaration
myArray = new int[10]; // Create (allocate memory for) an array of 10 ints
Ing kene kita nggawe array integer sing diarani myArray , ngandhani kompiler sing kasusun saka 10 sel (saben bakal ngemot integer). Nanging, luwih umum nggunakake sintaks sing disingkat ing ngisor iki kanggo nggawe array langsung nalika diumumake:

int[] myArray = new int [10]; // Declare the array and allocate memory "in one blow"
Tulung dicathet:Sawise larik digawe nggunakake operator anyar , sel kasebut ngemot nilai standar. Kanggo jinis numerik (kaya ing conto kita), nilai standar yaiku 0, kanggo jinis boolean , palsu , lan kanggo jinis referensi, null . Mangkono, sawise nglakokake statement iki

int[] myArray = new int[10];
kita entuk array saka sepuluh wilangan bulat lan, nganti program nindakake soko kanggo ngganti nilai, saben sel ngemot 0.

Sampeyan bisa nemokake informasi luwih lengkap babagan array ing artikel " Soko babagan array "

Larik ing Jawa

Kaya sing kasebut ing ndhuwur, dawa array yaiku jumlah unsur sing dirancang kanggo ditahan. Dawane array ora bisa diganti sawise digawe. Tulung dicathetyen unsur-unsur array diwenehi nomer wiwit saka nol ing basa Jawa. Mangkono, yen kita duwe array saka 10 unsur, banjur indeks saka unsur pisanan 0 lan indeks pungkasan punika 9. Larik ing basa Jawa - 3Sampeyan bisa njaluk dawa Uploaded nggunakake variabel dawa . Tuladhane:

int[] myArray = new int[10]; // Create an int array for 10 elements and name it myArray
System.out.println(myArray.length); // Display the array's length, i.e. the number of elements we can put into the array
Output:

10

Miwiti array lan ngakses unsur-unsur kasebut

Saiki kita ngerti carane nggawe array ing Jawa. Proses kasebut ora menehi array kosong, nanging array sing diisi karo nilai standar. Contone, kanggo array int , iki 0, lan yen kita duwe array saka sembarang tipe referensi, banjur standar ing saben sel null . Kita ngakses unsur array (contone, kanggo nyetel nilai, nampilake ing layar, utawa nindakake sawetara operasi) kanthi indeks. Inisialisasi array yaiku proses ngisi array kanthi nilai tartamtu (liyane saka standar). Conto: ayo nggawe array string kanggo 4 mangsa lan isi karo jeneng mangsa.

String[] seasons = new String[4]; /* Declare and create an array. Java allocates memory for an array of 4 strings, and each cell is set to null (since String is a reference type) */ 

seasons[0] = "Winter"; /* We set the first cell, i.e. the cell with index zero, to "Winter". Here we access the zeroth element of the array and write a specific value to it. */ 
seasons[1] = "Spring"; // We follow a similar procedure for the cell with index 1 (the second cell)
seasons[2] = "Summer"; // ... index 2
seasons[3] = "Autumn"; // and finally, index 3
Saiki jeneng mangsa ditulis ing papat sel array kita. Kita bisa miwiti array kanthi cara sing beda, nggabungake deklarasi lan initialization:

String[] seasons = new String[] {"Winter", "Spring", "Summer", "Autumn"};
Apa maneh, operator anyar bisa diilangi:

String[] seasons = {"Winter", "Spring", "Summer", "Autumn"};

Kepiye carane sampeyan nampilake array ing layar ing Jawa?

Sampeyan bisa nampilake unsur array ing layar (yaiku ing console) nggunakake loop kanggo . Cara liya sing luwih cendhek kanggo nampilake array bakal dibahas ing paragraf kanthi irah-irahan " Cara sing migunani kanggo nggarap array ". Ing sawetoro wektu, deleng conto iki ing ngendi array ditampilake nggunakake loop:

String[] seasons = new String {"Winter", "Spring", "Summer", "Autumn"}; 
for (int i = 0; i < 4; i++) {
System.out.println(seasons[i]); 
}
Program bakal nampilake ing ngisor iki:

Winter 
Spring 
Summer 
Autumn

Larik siji-dimensi lan multidimensi ing Jawa

Nanging kepiye yen kita ora pengin nggawe array nomer, string, utawa obyek liyane, nanging array array? Jawa ngidini sampeyan nindakake iki. Urut saka array sing wis kita kenal ( int[] myArray = new int[8] ) dikenal minangka array siji-dimensi. Nanging array array diarani array rong dimensi. Iku kaya tabel sing duwe nomer baris lan nomer kolom. Utawa, yen sampeyan wis sinau dhasar aljabar linear, sampeyan bisa nganggep minangka matriks. Larik ing basa Jawa - 4Napa kita butuh susunan kaya ngono? Inggih, kanggo program matriks lan tabel, uga obyek liyane sing duwe struktur padha. Contone, papan catur bisa diwakili dening array 8x8. Array multidimensi diumumake lan digawe kaya ing ngisor iki:

Int[][] myTwoDimentionalArray = new int[8][8];
Array iki nduweni persis 64 unsur: myTwoDimentionalArray[0][0] , myTwoDimentionalArray[0][1] , myTwoDimentionalArray[1][0] , myTwoDimentionalArray[1][1] lan sateruse nganti myTwoDimentionalArray[7][7] . Dadi yen digunakake kanggo makili papan catur, banjur A1 cocog karo myTwoDimentionalArray [0][0] lan E2 cocog karo myTwoDimentionalArray [4][1] . Nanging carane adoh kita bisa push iki? Ing Jawa, sampeyan bisa nemtokake array array... array array array, lan liya-liyane. Mesthine, array telung dimensi lan luwih dhuwur digunakake arang banget. Yen ngandika, sampeyan bisa nggunakake Uploaded telung dimensi kanggo program kothak Rubik kang, contone,.

Cara sing migunani kanggo nggarap array

Jawa nduweni kelas java.util.Arrays kanggo nggarap array. Umumé, operasi sing paling umum ditindakake ing array yaiku initialization (isi karo unsur), njupuk unsur (miturut indeks), ngurutake, lan nggoleki. Nggoleki lan ngurutake array minangka topik kanggo dina liyane. Ing tangan siji, praktik sing apik kanggo nulis sawetara algoritma telusuran lan ngurutake dhewe. Ing sisih liya, kabeh algoritma sing paling apik wis dileksanakake lan kalebu ing perpustakaan Jawa standar, lan sampeyan bisa nggunakake kanthi sah. Kene telung cara migunani ing kelas iki.

Ngurutake larik

Cara void sort(int[] myArray, int fromIndex, int toIndex) ngurutake array integer utawa subarray kanthi urutan munggah.

Nggoleki unsur ing larik

int binarySearch(int[] myArray, int fromIndex, int toIndex, int key) . Cara iki nggoleki unsur kunci ing array myArray utawa subarray sing diurutake , saka fromIndex nganti toIndex . Yen item ditemokake, banjur bali indeks. Yen ora, bali (-fromIndex) -1 .

Ngonversi array menyang string

Metode String toString(int[] myArray) ngowahi array dadi string. Ing Jawa, larik ora ngganti toString() . Iki tegese yen sampeyan nyoba nampilake kabeh array bebarengan (System.out.println(myArray)) tinimbang siji unsur ing siji wektu kaya ing paragraf kanthi judhul " Tampilake array ing layar ", sampeyan bakal entuk jeneng kelas lan hash heksadesimal array (ditetepake dening Object.toString () ). Yen sampeyan pamula, sampeyan bisa uga ora ngerti panjelasan babagan metode toString . Kaping pisanan, sampeyan ora perlu, nanging nggunakake cara iki nggampangake kanggo nampilake array. Jawa ngidini sampeyan nampilake array kanthi gampang tanpa nggunakake loop. Conto ing ngisor iki nuduhake iki.

Conto nggunakake sort, binarySearch, lan toString

Ayo nggawe array integer, nampilake nggunakake toString , urutake nggunakake cara ngurutake , banjur golek sawetara nomer ing.

class Main {
    public static void main(String[] args) {
        int[] array = {1, 5, 4, 3, 7}; // Declare and initialize the array
        System.out.println(array); // Try to display our array without using the toString method — the result is a hexadecimal number
        System.out.println(Arrays.toString(array)); // Display the array correctly 
        Arrays.sort(array, 0, 4); // Sort the entire array from the zeroth to the fourth element
        System.out.println(Arrays.toString(array)); // Display the sorted array
        int key = Arrays.binarySearch(array, 5); // Look for the number 5 in the sorted array. 
        // The binarySearch method will return the index of the array element we are searching for
        System.out.println(key); // Display the index of the number we searched for 
System.out.println(Arrays.binarySearch(array, 0)); // Now try to find a number that isn't in the array, 
        // and immediately display the result

    }
}
Output:

[I@1540e19d 
[1, 5, 4, 3, 7] 
[1, 3, 4, 5, 7] 
3 
-1
String pisanan minangka upaya kanggo nampilake array tanpa nggunakake toString . Kapindho yaiku array sing ditampilake nggunakake toString . Katelu yaiku array sing diurutake. Kaping papat yaiku indeks nomer sing digoleki (5) ing larik sing diurutake (elinga yen kita ngetung saka nol, mula indeks saka unsur kaping papat yaiku 3). Ing senar kalima, kita waca -1. Iki minangka indeks larik sing ora valid. Iki menehi tandha yen nomer sing digoleki (ing kasus iki, 0) ora ana ing array.

Liyane babagan cara ing kelas Array

Kelas Array lan panggunaane - Artikel iki nggambarake sawetara metode ing kelas Array
Kelas Array duwe 18 cara penting kanggo nggarap array

Arrays ing ringkesan

  • Karakteristik penting array: jinis data sing dilebokake, jenenge, lan dawane.
    Properti pungkasan ditemtokake nalika array digawe (nalika memori diparengake kanggo array). Loro sifat pisanan ditemtokake nalika larik diumumake.

  • Ukuran array (jumlah sel) kudu int

  • Ora bisa ngganti dawa array sawise digawe.

  • Unsur array bisa diakses kanthi indeks.

  • Unsur-unsur ing array, kaya kabeh liyane ing Jawa, diwenehi nomer wiwit saka nol.

  • Sawise array digawe, diisi karo nilai standar.

  • Array ing Jawa ora padha karo array ing C++. Padha meh kaya penunjuk kanggo susunan dinamis.

Bahan sing migunani babagan susunan

Pengin ngerti luwih akeh babagan array? Priksa artikel ing ngisor iki. Ana akeh materi sing menarik lan migunani babagan topik iki.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION