Как найти индекс элемента в массиве в Java?

Пользователь

от catherine_wintheiser , в категории: Java , 6 месяцев назад

Как найти индекс элемента в массиве в Java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jakayla , 3 месяца назад

@catherine_wintheiser 

В Java есть несколько способов найти индекс элемента в массиве.

  1. Использовать цикл for:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
int[] array = {1, 2, 3, 4, 5};
int target = 3;

int index = -1;
for (int i = 0; i < array.length; i++) {
    if (array[i] == target) {
        index = i;
        break;
    }
}

if (index != -1) {
    System.out.println("Индекс элемента: " + index);
} else {
    System.out.println("Элемент не найден");
}


  1. Использовать метод indexOf класса java.util.Arrays:
1
2
3
4
5
6
7
8
9
int[] array = {1, 2, 3, 4, 5};
int target = 3;

int index = Arrays.asList(array).indexOf(target);
if (index != -1) {
    System.out.println("Индекс элемента: " + index);
} else {
    System.out.println("Элемент не найден");
}


  1. Использовать метод binarySearch класса java.util.Arrays, если массив уже отсортирован:
1
2
3
4
5
6
7
8
9
int[] array = {1, 2, 3, 4, 5};
int target = 3;

int index = Arrays.binarySearch(array, target);
if (index >= 0) {
    System.out.println("Индекс элемента: " + index);
} else {
    System.out.println("Элемент не найден");
}


Обратите внимание, что метод binarySearch возвращает отрицательное число, если элемент не найден, поэтому нужно проверять индекс на значение >= 0.