introduction java arrays
Denne vejledning introducerer konceptet med arrays i Java. Vi har også introduceret relaterede emner som længde, datatyper, kloning, kopiering, sortering osv. Under Java-arrays:
I programmeringen beskæftiger du dig altid med data. Data skal gemmes på hukommelsesplaceringer, og for at få adgang til dem fra tid til anden og behandle i overensstemmelse hermed, skal de have noget navn. Dette gøres ved hjælp af variabler.
Således, hvis du vil gemme værdi 10 i hukommelsen, vil du erklære en variabel af typen int og gemme værdien som int num = 10;
Antag nu, at dit programkrav er sådan, at du har brug for 10 variabler af typen int.
I dette tilfælde skal du erklære 10 variabler af typen int som følger:
int a1;
int a2;
int a3;
int a4;
int a5;
int a6;
int a7;
int a8;
int a9;
int a10;
Ovenstående erklæringer vil lægge den unødvendige vedligeholdelsesbyrde på programmøren. I stedet for at erklære så mange variabler, hvad med at deklarere en enkelt variabel og derefter have alle disse 10 værdier tildelt denne variabel? Dette er hvad vi skal gøre, når vi definerer en matrix og tildeler værdier til den.
Lad os begynde med arrays i Java.
Hvad du lærer:
- Java Array
- Konklusion
Java Array
Arrays er intet andet end en datastruktur, der bruges til at holde dataelementerne af samme type sekventielt. Fra ovenstående eksempel kan du ændre definitionen af ti variabler til en enkelt variabel og gemme alle de ti værdier ved hjælp af abonnementer.
Lad os gøre det på nedenstående måde:
A (0) = 1;
A (1) = 2;
A (2) = 3;
A (3) = 4;
A (4) = 5;
A (5) = 6;
A (6) = 7;
A (7) = 8;
A (8) = 9;
A (9) = 10;
Vi har gemt alle ti værdier i indeksbaseret variabel. Det første indeks starter fra 0. Så den første værdi er ved 0thindeks, og den sidste værdi er på 9thindeks. Disse indekser kaldes også abonnementer.
I computerens hukommelse vil ovenstående Array A blive repræsenteret som:
Nu kan vi definere et array som en variabel, der er en samling af elementer af samme datatype og gemt på sammenhængende hukommelsessteder. Størrelsen på en matrix er specificeret på erklæringstidspunktet, og størrelsen er derfor fast.
Arrays, som vi skal diskutere i denne vejledning, er faste eller statiske arrays. Java understøtter også dynamiske arrays kaldet 'ArrayList', hvis størrelse kan ændres med det samme. Vi vil diskutere ArrayList i detaljer senere.
Nogle af de karakteristiske træk ved Arrays i Java er angivet nedenfor:
- I Java er en matrix et objekt, der instantieres fra en dynamisk genereret klasse.
- Internt implementerer Java array Serialiserbare og Cloneable grænseflader.
- Java-array har også objektklasse som sin overordnede klasse.
- Du kan gemme indbyggede og afledte typeværdier i Java-arrays.
- Du kan få længden på et array ved hjælp af længdemedlem og ikke størrelse som i C / C ++.
- Java tillader både såvel som flerdimensionelle arrays.
I denne vejledning introducerer vi alle matrixkoncepterne til læseren, som vi går
at dække i denne serie om Java Arrays.
Lad os begynde!!
Java Array - Oprettelse og initialisering
Arrangementer skal oprettes for at bruge dem i programmet. Oprettelse af arrays inkluderer specificering af datatypen af elementer, som arrayet skal indeholde, samt antallet af elementer, som arrayet skal indeholde.
Vi vil diskutere oprettelse af arrays på forskellige måder og også på forskellige metoder, hvor vi kan initialisere arrays.
Et eksempel på en af de metoder, der anvendes til array-oprettelse og initialisering, gives nedenfor.
public class Main { public static void main(String() args) { int() myArray; myArray = new int(5); myArray(0) = 1; myArray(1) = 3; System.out.println('myArray(0):' + myArray(0)); System.out.println('myArray(1):' + myArray(1)); System.out.println('myArray(2):' + myArray(2)); System.out.println('myArray(3):' + myArray(3)); System.out.println('myArray(4):' + myArray(4)); } }
Produktion:
I dette program har vi erklæret et int-array og derefter instantificeret det ved hjælp af nyt. Derefter har vi initialiseret elementer ved indeks 0 og 1 med henholdsvis værdierne 1 og 3.
Endelig udskriver vi alle elementerne i arrayet. Bemærk, at de elementer, vi ikke initialiserede, har standardværdier som 0, da typen af array er int.
Udskriv elementer i Java Array
Når arrays bruges i programmer, vises de sikkert. For at vise matrixelementer anvender vi specielle metoder som for loop, forEach loop, toString-metode i Arrays-klasse osv. Dette emne indeholder alle de forskellige metoder, der anvendes til udskrivning af array-elementer.
Nedenfor er et program, der bruger toString-metoden i 'Arrays' -klassen til at udskrive matrixelementer.
import java.util.*; public class Main { public static void main(String() args) { int() myArray; myArray = new int(5); myArray(0) = 1; myArray(1) = 3; System.out.println('Array Elements : ' + Arrays.toString(myArray)); } }
Produktion:
Arraylængde i Java
Længden af en matrix angiver antallet af elementer, der er til stede i arrayet. I modsætning til C / C ++, hvor vi bruger 'sizeof' operator til at få længden af arrayet, har Java array 'længde' egenskab. Vi vil undersøge mere om denne ejendom senere.
Nedenfor er det program, der viser længden på en matrix.
import java.util.*; public class Main { public static void main(String() args) { int() myArray = {1,3,5,7,9,11}; System.out.println('Size of the given array : ' + myArray.length); } }
Produktion:
I dette program har vi initialiseret arrayet ved hjælp af array literal og derefter ved hjælp af længdeegenskaben viser vi arrayets størrelse / længde.
Java Array-datatyper
Du kan have arrays af alle datatyper. I dette emne vil vi undersøge arrays med forskellige datatyper og deres definitioner.
I nedenstående program har vi defineret int og streng type arrays og vist deres respektive indhold .
hvordan man får vist en bin-fil
import java.util.*; public class Main { public static void main(String() args) { int() myArray = {1,3,5,7,9,11}; String() strArray = {'one','two','three','four','five'}; System.out.println('Elements of int array : ' + Arrays.toString(myArray)); System.out.println('Elements of String array : ' + Arrays.toString(strArray)); } }
Produktion:
Tilføjelse af et element til en matrix
Tilføjelsen af et element til arrayet er en vigtig operation. Arrays i Java er statiske og med fast længde. Derfor skal du angive et specifikt sæt operationer for at tilføje et nyt element til arrayet. De forskellige metoder til at tilføje et element til arrayet vil blive diskuteret her.
En af metoderne til at tilføje et element til arrayet er at bruge ArrayList som mellemstruktur. Vi konverterer arrayet til ArrayList. Derefter føjer vi elementet til ArrayList og ændrer ArrayList tilbage til array.
Programmet nedenfor viser denne implementering.
import java.util.*; class Main { public static void main(String() args) { int n = 10; int i; Integer intArray() = { 1, 2, 3, 4, 5 }; System.out.println('Original Array:
' + Arrays.toString(intArray)); int num = 10; Listintlist = new ArrayList(Arrays.asList(intArray)); intlist.add(num); intArray = intlist.toArray(intArray); System.out.println('
Array after adding ' + num + '
' + Arrays.toString(intArray)); } }
Produktion:
virksomheder, der tilbyder cloud computing-tjenester
Fjern / slet et element fra en matrix
Fjernelse af et element fra en matrix er også en anden vigtig operation. Java tillader os ikke direkte at fjerne et element. Så vi anvender andre muligheder for at gøre dette.
Nedenfor er implementeringen af en af metoderne til fjern elementet fra et array ved hjælp af en ArrayList .
import java.util.*; importjava.util.stream.*; class Main { public static void main(String() args) { int() tensArray = { 10,20,30,40,50}; System.out.println('Input Array: '+ Arrays.toString(tensArray)); int index = 1; System.out.println('Index to be removed: ' + index); if (tensArray == null || index = tensArray.length) { System.out.println('No element to delete'); } ListtensList = IntStream.of(tensArray).boxed().collect(Collectors.toList()); tensList.remove(index); tensArray = tensList.stream().mapToInt(Integer::intValue).toArray(); System.out.println('Array after deleting element at '+ index + ':
'+ Arrays.toString(tensArray)); } }
Produktion:
Her konverterer vi først arrayet til ArrayList og fjerner derefter elementet ved hjælp af ArrayList-metoden remove. Derefter konverterer vi ArrayList tilbage til arrayet og sender det ændrede array.
Kopiering af en matrix i Java
Vi vil diskutere nogle af operationerne til at kopiere matrixelementer fra et array til et andet. Vi vil også diskutere den lave og dybe kopiering af arrays.
En sådan metode er copyOf () -metoden i Arrays-klassen af java.util-pakken .
import java.util.*; public class Main { public static void main(String() args) { int() intArray = {10,15,20,25,30,35,40}; int array_len = intArray.length; System.out.println('Original Array:' + Arrays.toString(intArray)); int() copy_intArray = Arrays.copyOf(intArray, array_len); System.out.println('Copied Array:' + Arrays.toString(copy_intArray)); } }
Produktion:
Metoden 'copyOf' i Arrays-klassen kopierer det array, der er angivet som et argument sammen med dets længde, til et andet array.
Kloning af en matrix i Java
Du kan også oprette en klon af et array i Java. Java giver en metode til dette i ArrayUtils-pakken. Vi vil undersøge mere om kloning her.
Lad os implementere et simpelt eksempel, der kloner en matrix i Java.
import java.util.*; class Main { public static void main(String args()) { int num_Array() = {5,10,15,20,25,30}; int clone_Array() = num_Array.clone(); System.out.println('Original num_Array:' + Arrays.toString(num_Array)); System.out.println('Cloned num_Array:'+ Arrays.toString(clone_Array)); } }
Produktion:
Kloning er således bare kopiering ved hjælp af en anden metode.
Sortering af arrays i Java
Sortering af matrixelementer eller ordning i stigende eller faldende rækkefølge er en af de vigtige operationer. De fleste applikationer har brug for at sortere deres data. Java giver en filtersortering til arrays. Vi vil diskutere dette detaljeret under sortering.
Følgende er et simpelt eksempel på s orting af et array i Jave ved hjælp af Arrays.sort () -metoden .
import java.util.Arrays; public class Main { public static void main(String() args) { int() num_Array = {115,32,56,78,94,108,100,63}; System.out.println('Original Array: ' + Arrays.toString(num_Array)); Arrays.sort(num_Array); System.out.println('Sorted Array: ' + Arrays.toString(num_Array)); } }
Produktion:
Som vist ovenfor sorterer sorteringsmetoden i Arrays-klassen arrayelementerne i stigende rækkefølge.
Vend en matrix i Java
Omvendt rækkefølgen af elementer tilvejebringes heller ikke af arrays. Ligesom fjern, er vi nødt til at foretage en vending og opnå resultaterne. I dette emne vil vi se metoderne til at vende en matrix.
Følgende program viser implementering af reversering af en matrix .
import java.util.*; public class Main { public static void main(String() args) { Integer () even_Arrayr = {2,4,6,8,10}; System.out.println('Original Array:' + Arrays.asList(even_Arrayr)); Collections.reverse(Arrays.asList(even_Arrayr)); System.out.println('Reversed Array:' + Arrays.asList(even_Arrayr)); } }
Produktion:
Undtagelse fra ArrayIndexOutOfBounds
Når du forsøger at få adgang til arrayelementer ud over den angivne længde eller et negativt indeks, kaster compileren 'ArrayIndexOutOfBounds' undtagelse. Vi vil udforske mere om denne undtagelse i vores relaterede emne.
import java.util.ArrayList; public class Main { public static void main(String() args) { ArrayListmyList = new ArrayList(); myList.add('one'); myList.add('two'); System.out.println(myList.get(2)); } }
Produktion :
I ovenstående program har vi en ArrayList med to poster, og vi prøver at få posten i indeks 2, der ikke findes. Derfor giver programmet IndexOutofBounds Undtagelse.
Java String Array & forskellige metoder
Blandt alle datatyper, der understøttes af Java, er String den vigtigste. Derfor fortjener strengtype også en særlig diskussion. Da dataene i et strengarray for det meste er tekst, findes der forskellige metoder til at manipulere teksten.
import java.util.ArrayList; public class Main { public static void main(String() args) { String() rgb = {'Red', 'Green', 'Blue'}; System.out.println('The string array elements:'); for (String item: rgb) { System.out.print(item + ' '); } } }
Produktion:
Dette er et grundlæggende program til strengarray. Vi har lige deklareret et strengarray og vist dets indhold ved hjælp af forEach-sløjfen.
Flerdimensionelle arrays i Java
Indtil videre har vi kun set en-dimensionelle arrays. Java understøtter også flerdimensionelle arrays med elementer, der hovedsagelig er arrangeret i rækker og kolonner. Arrays i Java bliver mere komplekse, da hvert element i arrayet kan indeholde et andet array.
Vi vil udforske flerdimensionelle arrays i Java sammen med deres specifikke operationer her.
Lad os implementere et eksempel på et todimensionelt array.
class Main { public static void main(String args()) { // declaring and initializing 2D array int array_2d()() = { {1,2,3},{4,5,6},{7,8,9} }; System.out.println('The two-dimensional array is as follows:'); for (int i=0; i<3 ; i++) { for (int j=0; j < 3 ; j++) System.out.print(array_2d(i)(j) + ' '); System.out.println(); } }
Produktion:
Java Array Of Objects
Bortset fra at gemme primitive typer kan java-arrays også gemme objekter. I dette emne vil vi udforske nogle eksempler på en række objekter.
Et eksempel er givet nedenfor.
class Main{ public static void main(String args()){ Test testobj() = new Test(2) ; testobj(0) = new Test(); testobj(1) = new Test(); testobj(0).setData(1,3); testobj(1).setData(2,4); System.out.println('For Array Element 0 (testobj(0)):'); testobj(0).displayData(); System.out.println('For Array Element 1 (testobj(1)):'); testobj(1).displayData(); } } class Test{ int val1; int val2; public void setData(int c,int d){ val1=c; val2=d; } public void displayData(){ System.out.print('val1 ='+val1 + '; val2 ='+val2 + '
'); } }
Produktion:
Vi kan have arrays, der indeholder elementer som objekter. I ovenstående program har vi en række objekter i klasse Test. Vi kalder individuelt medlemsfunktioner for hvert objekt for at indstille og vise værdierne.
Returner en matrix i Java
På samme måde, hvor vi returnerer en variabel fra enhver metode, kan vi også returnere en matrix. På samme måde kan vi videregive en matrix til en metode. Begge disse muligheder vil blive diskuteret med eksempler her.
Normalt sendes en henvisning til arrayet til / fra en metode.
Det følgende program demonstrerer returneringen af en matrix i Java .
class Main { static int() add_sub(int val1, int val2) { int() result = new int(2); result(0) = val1 + val2; result(1) = val1 - val2; return result; } public static void main(String() args) { int() result = add_sub(10, 5); System.out.println('val1 + val2 = ' + result(0)); System.out.println('val1 - val2 = ' + result(1)); } }
Produktion:
I ovenstående program udfører vi to operationer, dvs. addition og subtraktion af to tal. Resultatet af hver operation er gemt som et element i arrayet. Derefter returneres hele matrixreferencen til opkaldsfunktionen.
Java Array-klasse
Java-array-klassen er en klasse fra java.util-pakken, der giver funktionaliteten til at manipulere arrays. Det giver mange funktioner som kopiering af et array, sortering, konvertering af et array til streng osv.
Java Generic Array
Vi har allerede set generics i Java, som er typeuafhængige enheder. Java-arrays kan være generiske, hvor de kan defineres som uafhængige af typer. Men den generiske kode er ikke tilgængelig, når byte-koden genereres, og det er derfor vanskeligt at udlede typen af element, som arrayet holder ved kørselstid.
Så i stedet for arrays skifter vi til lister fra Java-samlingens ramme, når generiske kræves.
Vi kan dog også have en generisk-lignende array-struktur ved at anvende en eller flere metoder. Her vil vi udforske disse metoder.
Et eksempel på en af metoderne ved hjælp af objektarrays er angivet nedenfor.
import java.util.Arrays; class Main { public static void main(String() args) { final int length = 5; //integer array object from Generic_Array class Generic_ArrayintArray = new Generic_Array(length); for (int i = 0; i Produktion:

Så i ovenstående program har vi skrevet en generisk matrixklasse med objektmatrix som et element og get / set-metoder til at få / sæt array-objekter. Vi har også tilsidesat toString-metoden i Arrays-klassen. I hovedklassen opretter vi to objekter af en generisk matrixklasse af typen Heltal og streng og tildeler dem passende værdier.
Jagged Arrays I Java
Jagged arrays er flerdimensionelle arrays med hvert medlemsarray i forskellige størrelser. Et Jagged array er også et eksempel på et array af arrays.
Det følgende program viser et eksempel på Jagged array.
class Main { public static void main(String() args) { int jagged_array()() = new int(2)(); jagged_array(0) = new int(4); jagged_array(1) = new int(2); for (int i=0; i Produktion:

Vi har et 2D-array i ovenstående program. Den første matrixdimension er 4, mens den anden er 2. Outputtet viser indholdet af begge dimensionerne for den Jagged array.
Arrays i Java 8
Da Java 8 var en stor udgivelse af Java, gennemgår vi de ændringer, det medførte til arrays. For eksempel, streams på Arrays blev introduceret i Java 8.
Importer Array i Java
Vi kan medtage yderligere funktionalitet til arrays i Java ved at importere klassen 'Arrays' i pakken 'java.util'.
Vi kan også importere arrayutils-pakken for at få flere funktioner. Du skal have fået mere viden om importfunktionaliteten fra vores tidligere eksempler.
Java Array API og dokumentation
Java array API er en samling af alle de funktioner, der virker på Java-arrays. Vi gennemgår denne applikationsprogrammeringsgrænseflade (API) her.
Vi har endelig listet alle egenskaber og metoder sammen med deres beskrivelse for Java-arrays. Dette vil hjælpe læserne med en hurtig reference.
hvordan man bruger grep-kommandoen i unix
Ofte stillede spørgsmål
Q # 1) Er arrays primitive datatyper i Java?
Svar: Nej. Arrays er ikke primitive datatyper, men arrays er containerobjekter, der indeholder elementer af samme datatype sammenhængende placeringer.
Q # 2) Er arrays referencetyper i Java?
Svar: Ja. Arrayet er en beholder med objekter og behandles som referencer.
Q # 3) Kan du øge størrelsen på en matrix i Java?
Svar: Nej. Du erklærer arrays og instantierer det med størrelse. Når det er angivet, kan du ikke ændre størrelsen på arrayet.
Konklusion
I denne vejledning introducerede vi dig til begrebet arrays i Java. Vi diskuterede de vigtigste emner forbundet med Java-arrays.
I vores efterfølgende tutorials vil vi udforske disse Array-relaterede emner i Java i detaljer.
Glad læring !!
Anbefalet læsning
- Java datatyper, sløjfer, arrays, switch og påstande
- Java-undtagelser og undtagelseshåndtering med eksempler
- Java Generics-tutorial med eksempler
- Java-interface og abstrakt klasseundervisning med eksempler
- Introduktion til Java-programmeringssprog - Videovejledning
- Java String med String Buffer og String Builder Tutorial
- JAVA-vejledning til begyndere: 100+ praktiske Java-videovejledninger
- Flerdimensionelle arrays og jagged arrays i C #