Utworzono listę całkowitą i próbuję zwrócić indeks określonej wartości. Tablica ma 3,8,2,5,1,4,7,6 i chcę zwrócić indexOf (3), który powinien wynosić 0.Dlaczego funkcja indexOf nie znajduje obiektu?
Próbowałem następujących rzeczy w Eclipse Java Scrapbook po zaimportowaniu java.util *.
int[] A = {3,8,2,5,1,4,7,9};
Arrays.asList(A).indexOf(3)
próbowałem również:
int[] A = {3,8,2,5,1,4,7,6};
ArrayList<Integer> l = new ArrayList(Arrays.asList(A));
l.indexOf(3)
Obaj wracają -1. Czemu? Jak sprawić, by działało zgodnie z oczekiwaniami?
Dziękuję za odpowiedzi wszystkim. Przy tej zmianie musiałbym zmienić strukturę danych, więc zamiast tego użyję metody binarySearch, ponieważ będzie ona działać na tablicach int []. – rishimaharaj
Ostrzegam, że to zadziała tylko na _sorted_ 'int []' tablicach, których przykłady, których opisujesz, nie są. –
@LouisWasserman Nie dostaję twojego komentarza i zdobytych wiadomości. 'indexOf'" Zwraca indeks pierwszego wystąpienia określonego elementu z tej listy lub -1, jeśli ta lista nie zawiera tego elementu. " - dlaczego więc nie działa to dla arbitralnych macierzy? – arekolek