Hoe vind je de index van een element in een int array?

Hoe kan ik een index vinden van een bepaalde waarde in een Java array van het type int?

Ik heb geprobeerd Arrays.binarySearch te gebruiken op mijn ongesorteerde array, het geeft alleen soms het juiste antwoord.

Integer[] array = {1,2,3,4,5,6};

Arrays.asList(array).indexOf(4);

Merk op dat deze oplossing threadsafe is omdat het een nieuw object aanmaakt van het type List.

Ook wil je dit niet aanroepen in een lus of iets dergelijks omdat je dan elke keer een nieuw object aanmaakt

Commentaren (5)

Je zou het kunnen converteren naar een lijst, en dan de indexOf methode gebruiken:

Array.asList(array).indexOf(1); 

http://download.oracle.com/javase/1.5.0/docs/api/java/util/Arrays.html#asList(T...) http://download.oracle.com/javase/1.5.0/docs/api/java/util/List.html#indexOf(java.lang.Object)

Commentaren (1)

Je kunt door de array lopen tot je de index vindt die je zoekt, of in plaats daarvan een List gebruiken. Merk op dat je de array in een lijst kunt veranderen met asList().

Commentaren (0)