introduction java arrays
Denne opplæringen introduserer konseptet med matriser i Java. Vi har også introdusert relaterte emner som lengde, datatyper, kloning, kopiering, sortering, etc. under Java-arrays:
I programmering håndterer du alltid data. Data må lagres på minneplasser, og for å få tilgang til dem fra tid til annen og behandle deretter, må de få noe navn. Dette gjøres av variabler.
Dermed, hvis du vil lagre verdi 10 i minnet, vil du erklære en variabel av typen int og lagre verdien som int num = 10;
Anta at programkravet ditt er slik at du trenger 10 variabler av typen int.
I dette tilfellet må du erklære 10 variabler av 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;
Ovennevnte erklæringer vil legge den unødvendige vedlikeholdsbyrden for programmereren. I stedet for å erklære så mange variabler, hva med å erklære en enkelt variabel, og deretter har alle disse 10 verdiene tilordnet denne variabelen? Dette er hva vi skal gjøre når vi definerer en matrise og tilordner verdier til den.
La oss begynne med matriser i Java.
Hva du vil lære:
- Java Array
- Konklusjon
Java Array
Arrays er ikke annet enn en datastruktur som brukes til å holde dataelementene av samme type på en sekvensiell måte. Fra eksemplet ovenfor kan du endre definisjonen av ti variabler til en enkelt variabel og lagre alle de ti verdiene ved hjelp av abonnement.
La oss gjøre det på nedenstående måte:
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 lagret alle ti verdiene i indeksbasert variabel. Den første indeksen starter fra 0. Den første verdien er altså 0thindeks og den siste verdien er 9thindeks. Disse indeksene kalles også abonnement.
I dataminnet vil Array A ovenfor bli representert som:
Nå kan vi definere en matrise som en variabel som er en samling av elementer av samme datatype og lagret på sammenhengende minneplasser. Størrelsen på en matrise er spesifisert på erklæringstidspunktet, og størrelsen er derfor fast.
Arrangementene vi skal diskutere i denne opplæringen er faste eller statiske matriser. Java støtter også dynamiske matriser kalt 'ArrayList' hvis størrelse kan endres på farten. Vi vil diskutere ArrayList i detalj senere.
Noen av egenskapene til Arrays i Java er oppført nedenfor:
- I Java er en matrise et objekt som er instantiert fra en dynamisk generert klasse.
- Internt implementerer Java array Serialiserbare og Cloneable grensesnitt.
- Java-array har også objektklasse som overordnet klasse.
- Du kan lagre innebygde og avledede typeverdier i Java-matriser.
- Du kan få lengden på en matrise ved hjelp av lengdemedlem og ikke størrelse som i C / C ++.
- Java tillater enkelt så vel som flerdimensjonale matriser.
I denne opplæringen vil vi introdusere alle matrisekonseptene til leseren vi skal
å dekke i denne serien på Java Arrays.
La oss begynne!!
Java Array - Opprettelse og initialisering
Arrangementer må opprettes for å bruke dem i programmet. Å lage matriser inkluderer å spesifisere datatypen av elementer som matrisen skal inneholde, samt antall elementer matrisen skal inneholde.
Vi vil diskutere å lage matriser på forskjellige måter og også på forskjellige metoder som vi kan initialisere matriser med.
Et eksempel på en av metodene som brukes for å opprette og initialisere matriser er gitt 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)); } }
Produksjon:
I dette programmet har vi erklært en int-array og deretter instansert den ved hjelp av ny. Så har vi initialisert elementer ved indeks 0 og 1 med henholdsvis verdiene 1 og 3.
Til slutt skriver vi ut alle elementene i matrisen. Vær oppmerksom på at elementene vi ikke initialiserte har standardverdier som 0 siden typen array er int.
Skriv ut elementer i Java Array
Når matriser brukes i programmer, vil de sikkert vises. For å vise matriseelementer bruker vi spesielle metoder som for loop, forEach loop, toString-metode for Arrays-klasse, etc. Dette emnet inneholder alle de forskjellige metodene som brukes til å skrive ut array-elementer.
Nedenfor er et program som bruker toString-metoden i klassen 'Arrays' for å skrive ut matriseelementer.
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)); } }
Produksjon:
Lengde på matrise i Java
Lengden på en matrise angir antall elementer som er tilstede i matrisen. I motsetning til C / C ++, der vi bruker ‘sizeof’ operatør for å få lengden på matrisen, har Java-arrayen ‘lengde’ -egenskap. Vi vil utforske mer om denne eiendommen senere.
Nedenfor er programmet som viser lengden på en serie.
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); } }
Produksjon:
koblet listeopplæring c ++
I dette programmet har vi initialisert matrisen ved hjelp av ordbokstavelig og deretter bruker egenskapen lengde vi viser størrelsen / lengden på matrisen.
Java Array-datatyper
Du kan ha matriser av alle datatyper. I dette emnet vil vi utforske matriser med forskjellige datatyper og deres definisjoner.
I programmet nedenfor har vi definert matriser for int og streng og vist deres respektive innhold .
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)); } }
Produksjon:
Legge til et element i en matrise
Tillegg av et element i matrisen er en viktig operasjon. Arrangementene i Java er statiske og med fast lengde. Derfor må du oppgi et bestemt sett med operasjoner for å legge til et nytt element i matrisen. De forskjellige metodene for å legge til et element i matrisen vil bli diskutert her.
En av metodene for å legge til et element i matrisen er å bruke ArrayList som mellomstruktur. Vi konverterer matrisen til ArrayList. Deretter legger vi elementet til ArrayList og endrer ArrayList tilbake til array.
Programmet nedenfor viser denne implementeringen.
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)); } }
Produksjon:
selen webdriver intervju spørsmål og svar for erfarne
Fjern / slett et element fra en matrise
Fjerning av et element fra en matrise er også en annen viktig operasjon. Java tillater oss ikke direkte å fjerne et element. Så vi bruker andre alternativer for å gjøre dette.
Nedenfor er implementeringen av en av metodene for å fjern elementet fra en matrise ved hjelp av 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)); } }
Produksjon:
Her konverterer vi først matrisen til ArrayList og fjerner deretter elementet ved hjelp av ArrayList-metoden remove. Etter det konverterer vi ArrayList tilbake til matrisen og sender ut den endrede matrisen.
Kopiering av en matrise i Java
Vi vil diskutere noen av operasjonene for å kopiere matriseelementer fra en matrise til en annen. Vi vil også diskutere grunne og dype kopieringer av matriser.
En slik metode er copyOf () -metoden i Arrays-klassen av 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)); } }
Produksjon:
‘CopyOf’-metoden i Arrays-klassen kopierer matrisen som er angitt som et argument sammen med lengden til en annen matrise.
Kloning av en serie i Java
Du kan også lage en klon av en matrise i Java. Java gir en metode for dette i ArrayUtils-pakken. Vi vil utforske mer om kloning her.
La oss implementere et enkelt eksempel som kloner en matrise 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)); } }
Produksjon:
Dermed er kloning bare kopiering ved hjelp av en annen metode.
Sortering av matriser i Java
Sortering av matriseelementer eller ordning i stigende eller synkende rekkefølge er en av de viktigste operasjonene. De fleste av applikasjonene trenger at dataene deres sorteres. Java gir en filtersortering for matriser. Vi vil diskutere dette i detalj under sortering.
Følgende er et enkelt eksempel på s orting en matrise i Jave ved hjelp av 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)); } }
Produksjon:
Som vist ovenfor, sorterer metoden for Arrays-klassen matriseelementene i stigende rekkefølge.
Reverse An Array In Java
Å reversere rekkefølgen av elementer er heller ikke gitt av matriser. Akkurat som å fjerne, må vi gjøre litt omgang og oppnå resultatene. I dette emnet vil vi se metodene for å reversere en matrise.
Følgende program viser implementering av reversere en matrise .
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)); } }
Produksjon:
ArrayIndexOutOfBounds Unntak
Når du prøver å få tilgang til matriseelementer utover den angitte lengden eller en negativ indeks, kaster kompilatoren 'ArrayIndexOutOfBounds' unntak. Vi vil utforske mer om dette unntaket i vårt beslektede 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)); } }
Produksjon :
I programmet ovenfor har vi en ArrayList med to oppføringer, og vi prøver å få oppføringen i indeks 2 som ikke eksisterer. Derfor gir programmet IndexOutofBounds Unntak.
Java String Array & Various Methods
Blant alle datatypene som støttes av Java, er String den viktigste. Derfor fortjener strengtypen også en spesiell diskusjon. Ettersom dataene i en strengmatrise hovedsakelig er tekst, finnes det forskjellige metoder for å 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 + ' '); } } }
Produksjon:
Dette er et grunnleggende program for strengarray. Vi har nettopp erklært en strengmatrise og vist innholdet ved hjelp av forEach-løkken.
Flerdimensjonale matriser i Java
Så langt har vi sett bare endimensjonale matriser. Java støtter også flerdimensjonale matriser med elementer som hovedsakelig er ordnet i rader og kolonner. Matriser i Java blir mer komplekse ettersom hvert element i matrisen kan inneholde en annen matrise.
Vi vil utforske flerdimensjonale matriser i Java sammen med deres spesifikke operasjoner her.
La oss implementere et eksempel på en todimensjonal matrise.
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(); } }
Produksjon:
Java Array Of Objects
Bortsett fra å lagre primitive typer, kan Java-arrays også lagre objekter. I dette emnet vil vi utforske noen eksempler på en rekke objekter.
Et eksempel er gitt 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 + '
'); } }
Produksjon:
Vi kan ha matriser som inneholder elementer som objekter. I programmet ovenfor har vi en rekke objekter fra klasse Test. Vi kaller medlemsfunksjoner individuelt for hvert objekt for å angi og vise verdiene.
Return An Array In Java
På samme måte, der vi returnerer en variabel fra hvilken som helst metode, kan vi også returnere en matrise. På samme måte kan vi overføre en matrise til en metode. Begge disse mulighetene vil bli diskutert med eksempler her.
Vanligvis sendes en referanse til matrisen til / fra en metode.
Det følgende programmet viser retur av en matrise 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)); } }
Produksjon:
I programmet ovenfor utfører vi to operasjoner, dvs. addisjon og subtraksjon av to tall. Resultatet av hver operasjon lagres som et element i matrisen. Deretter returneres hele matrisereferansen til anropsfunksjonen.
Java Array-klasse
Java array-klassen er en klasse fra java.util-pakken som gir funksjonaliteten til å manipulere matriser. Det gir mange funksjoner som å kopiere en matrise, sortere, konvertere en matrise til streng, etc.
Java Generic Array
Vi har allerede sett generics i Java som er typeuavhengige enheter. Java-matriser kan være generiske der de kan defineres som uavhengige av typer. Men den generiske koden er ikke tilgjengelig når byte-koden genereres, og det er derfor vanskelig å utlede typen element, matrisen vil holde ved kjøretid.
I stedet for matriser bytter vi altså til lister fra rammeverket for Java-samling når generiske er påkrevd.
Imidlertid kan vi også ha en generisk-lignende array-struktur ved å benytte en eller flere metoder. Her vil vi utforske disse metodene.
Et eksempel på en av metodene som bruker objektmatriser er gitt 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 Produksjon:
anime-nettsteder for å se anime gratis

Så i det ovennevnte programmet har vi skrevet en generisk matrixklasse med objektmatrise som et element og get / set-metoder for å få / set array-objekter. Vi har også overstyrt toString-metoden i Arrays-klassen. I hovedklassen lager vi to objekter av en generisk matrixklasse av typen Heltall og streng og tildeler dem passende verdier.
Jagged Arrays In Java
Jagged arrays er flerdimensjonale arrays med hvert medlemsutvalg i forskjellige størrelser. En Jagged array er også et eksempel på en rekke arrays.
Følgende program viser et eksempel på Jagged-arrayet.
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 Produksjon:

Vi har et 2D-utvalg i programmet ovenfor. Den første matrisedimensjonen er 4 mens den andre er 2. Utgangen viser innholdet av begge dimensjonene til den Jagged matrisen.
Matriser i Java 8
Ettersom Java 8 var en stor utgivelse av Java, vil vi gå gjennom endringene det førte til arrays. For eksempel, streams on Arrays ble introdusert i Java 8.
Import Array In Java
Vi kan inkludere tilleggsfunksjonalitet for matriser i Java ved å importere klassen ‘Arrays’ i pakken ‘java.util’.
Vi kan også importere arrayutils-pakken for å få flere funksjoner. Du må ha fått mer kunnskap om importfunksjonaliteten fra våre tidligere eksempler.
Java Array API og dokumentasjon
Java array API er en samling av alle funksjonene som virker på Java-arrays. Vi vil gå gjennom dette applikasjonsprogrammeringsgrensesnittet (API) her.
Vi har endelig listet opp alle egenskapene og metodene sammen med beskrivelsen for Java-arrays. Dette vil hjelpe leserne med en rask referanse.
ofte stilte spørsmål
Q # 1) Er arrays primitive datatyper i Java?
Svar: Nei. Arrays er ikke primitive datatyper, men arrays er containerobjekter som inneholder elementer av samme datatype sammenhengende steder.
Q # 2) Er arrays referansetyper i Java?
Svar: Ja. Matrisen er en beholder med objekter og behandles som referanser.
Q # 3) Kan du øke størrelsen på en matrise i Java?
Svar: Nei. Du erklærer matriser og instanserer den med størrelse. Når du har angitt, kan du ikke endre størrelsen på matrisen.
Konklusjon
I denne opplæringen introduserte vi deg for begrepet arrays i Java. Vi diskuterte hovedtemaene knyttet til Java-arrays.
I de påfølgende opplæringene vil vi utforske disse Array-relaterte emnene i Java i detalj.
Happy Learning !!
Anbefalt lesing
- Java datatyper, sløyfer, matriser, bryter og påstander
- Java-unntak og unntakshåndtering med eksempler
- Java Generics Tutorial med eksempler
- Java-grensesnitt og abstrakt klasseopplæring med eksempler
- Introduksjon til Java Programming Language - Video Tutorial
- Java String with String Buffer and String Builder Tutorial
- JAVA-opplæring for nybegynnere: 100+ praktiske Java-videoveiledninger
- Flerdimensjonale arrays og jagged arrays i C #