Hvordan få en indeks av et matriseelement i Java

Hvordan få en indeks av et matriseelement i Java
En matrise er et sett med elementer med samme datatype og blir behandlet som en datastruktur i fast størrelse. I Java arverer en matrise objektklassen og kan opprettes dynamisk. Imidlertid er matriser indeksbasert, det er grunnen til at det første elementet i en matrise er lagret ved nullindeksene og det andre elementet er ved første indeks, og så videre.

Denne guiden vil illustrere metodene for å få en indeks over et arrayelement i Java.

Hvordan få en indeks av et matriseelement i Java?

For å få en indeks over et arrayelement i Java, kan du bruke de under-nevnte metodene.

  • Lineær søk
  • INDEXOF () Metode
  • BinarySearch () -metode

La oss forstå arbeidet med disse metodene en etter en med eksempler!

Metode 1: Få en indeks over et arrayelement ved hjelp av lineært søk

Lineært søk er enkelt å implementere i tilfeller når en matrise har færre elementer. Denne typen søk kan utføres på både enkeltdimensjonale og flerdimensjonale matriser. Når indeksen for et enkelt array -element blir hentet fra en uordnet liste, er lineært søk på nytt som er mer effektivt.

I dette avsnittet vil vi få en indeks over et matriseelement ved å bruke et lineært søk med en "for" -sløyfe.

Syntaks
Følgende syntaks brukes til det spesifiserte formålet:

for (int i = 0; i < array.length; i++)

Her starter sløyfen fra “0”Og det vil iterere til lengden på matrisen.

Eksempel
I dette eksemplet vil vi lage en heltallstype som heter “Array”Og initialiser det med følgende verdier:

int [] array = 1,5,8,14,20,23;

Vi ønsker å få indeksen for matriselementet “5”, Så vi lagrer den i en heltallstypevariabel”punkt”:

int element = 5;

Som vi vet starter indeksen for en matrise fra 0, så vi sparer "-1”I en heltallstypevariabel”indeks”Det vil øke i løkken ved å iterere elementer i en matrise:

int indeks = -1;

Her vil vi iterere matrisen til lengden på matrisen ved å bruke “til”Løkke og sjekk elementene i matrisen for å matche variabelen”punkt”Og lagre matchede”indeks”Når elementet i matrisen stemmer overens med“punkt”:

for (int i = 0; i < array.length; i++)
if (array [i] == element)
indeks = i;
gå i stykker;

Til slutt, skriv ut verdien av "indeks”Variabel, som lagrer indeksen for den matchede varen:

System.ute.println ("5 er lokalisert på" + indeks + "indeks");

Utgangen viser at “5”Element i en matrise lagres ved“1”Indeks:

La oss se de andre metodene for å få en indeks over et arrayelement i Java.

Metode 2: Få en indeks over et array -element ved bruk av IndexOf () -metode

oversikt over()”Metode for“Matriser”Klassen tilhører Java.Utilpakke og brukes også til å bestemme det aktuelle elementets indeks i en matrise. Denne metoden henter indeksen for første forekomst av det ekstra elementet. Den konverterer først en matrise til en array -liste ved hjelp av "ASList ()”Metode og kaller deretter“oversikt over()”Metode.

Syntaks
Syntaksen til “oversikt over()”Metoden er gitt som:

Matriser.ASList (Array).indeks av (verdi);

Her, "ASList ()”Metode kalles ved hjelp av klassenavnet”Matriser”Ved å passere en“Array”Til det som et argument, som konverterer det til en matriseliste og deretter kaller“oversikt over()”Metode ved å gi verdien som vi ønsker å få indeksen.

Eksempel
For det første, lage en heltallstype som heter “Array”. Merk at det er en "Heltall”Innpakningsklasse -matrise, ikke en primitiv”int”Array, fordi“ASList ()”Metode tar en innpakningsklasse som et argument, og den returnerer de primitive INT -verdiene:

Heltall [] Array = 1,5,8,14,20,23;

For å få indeksen for “14”Element, vi vil bruke“oversikt over()”Metode for matriseklassen, konverter den i en matriseliste og lagre deretter den matchede indeksen i“GetArrayIndex”Variabel:

int getArrayIndex = Arrays.ASList (Array).indeks av (14);

Til slutt, skriv ut indeksen til et element ved å bruke “System.ute.println ()”Metode:

System.ute.println ("14 ligger på" + getArrayIndex + "indeks");

Utgangen viser at elementet “14”Er plassert på“3”Indeks for vårt utvalg:

Vi sjekket metoden for å finne indeksen for elementet i en usortert matrise. Hva om du har en sortert matrise? For å få svaret på det uttalte spørsmålet, følg de undergitte seksjonene.

Metode 3: Få en indeks over et matriseelement i Java ved bruk av binarysearch () -metode

BinarySearch ()”Metode brukes også for å få en indeks over elementet i en matrise, men den brukes til bare sorterte matriser. Det er en forhåndsdefinert statisk metode i Java som tilhører matriseklassen. Det tar to parametere: en matrise og en verdi som indeksen vil bli bestemt.

Merk: “BinarySearch ()”Metoden brukes bare til den sorterte matrisen.

Syntaks
Følg den undergitte syntaks for å få en indeks over et element i en matrise ved bruk av binarysearch () -metode:

Matriser.binarysearch (matrise, verdi);

Den spesifiserte metoden kalles med array -klassen, og den godtar en verdi som vil bli søkt i den gitte matrisen.

Eksempel
Her har vi en matrise som heter “Array”Sortert i stigende rekkefølge:

int [] array = 1,5,8,14,20,23;

Vi vil kalle “BinarySearch ()”Metode ved å passere matrisen og elementet“20”Som et argument. Den resulterende indeksen vil bli lagret i heltallstypevariabelen “indeks”:

int indeks = matriser.BinarySearch (Array, 20);

Til slutt vil vi skrive ut indeksen for det spesifiserte elementet i konsollvinduet:

System.ute.println ("20 er lokalisert på" + indeks + "indeks");

Utgangen viser at elementet “20”Ligger på“4. plass”Indeks for en matrise:

Vi samlet alle essensielle instruksjoner for å få en indeks over et matriseelement i Java.

Konklusjon

For å få en indeks over et array -element, kan du bruke tre forskjellige metoder: lineær søk ved å bruke en loop, indexOf () -metode og binarysearch () -metode. Den vanlige og nyttige metoden for å få indeksen for et element er IndexOf () -metoden. Mens binarysearch () -metoden brukes på sorterte matriser, og lineær søk kan brukes med den usorterte matrisen. I denne guiden har vi illustrert metodene for å få en indeks over et utvalg element i Java med detaljerte eksempler.