- Как найти индекс массива java
- Найти индекс элемента в данном массиве в Java
- 1. Наивное решение — линейный поиск
- 2. Использование потока Java 8
- 3. Преобразовать в список
- 4. Бинарный поиск отсортированных массивов
- 5. Использование библиотеки Guava
- Как найти индекс элемента в массиве java
- How to find index of Element in Java Array?
- Find Index of Element in Array using Looping Technique
- Using While Loop
- Using For Loop
- Find Index of Element in Array using Looping ArrayUtils
- Conclusion
- How to Get an Index of an Array Element in Java
- How to Get an Index of an Array Element in Java?
- Method 1: Get an Index of an Array Element Using Linear Search
- Method 2: Get an Index of an Array Element Using indexOf() Method
- Method 3: Get an Index of an Array Element in Java Using binarySearch() Method
- Conclusion
- About the author
- Farah Batool
Как найти индекс массива java
Чтобы найти индекс искомого элемента в массиве можно в цикле перебрать все элементы и сравнить их с искомым. Если они равны, будет выведен индекс первого подходящего элемента.
// Число, которое будем искать int num = 3; // Переменная для хранения индекса, // найденного числа int index = -1; int[] arr = 1, 2, 3, 4, 5>; for (int i = 0; i arr.length; i++) // Если элемент и число равны, то // сохраняй индекс if (arr[i] == num) index = i; > > System.out.println(index); // => 2
Также можно воспользоваться пакетом org.apache.commons.lang , методом indexOf() из класса ArrayUtils для нахождения индекса элемента.
import org.apache.commons.lang3.ArrayUtils; public class Example public static void main(String[] args) int[] arr = 1, 2, 3, 4, 5>; // индекс числа 3 int index = ArrayUtils.indexOf(arr, 3); System.out.println(index); // => 2 > >
Найти индекс элемента в данном массиве в Java
В этом посте будет обсуждаться, как найти индекс элемента в массиве примитивов или объектов в Java.
Решение должно либо возвращать индекс первого вхождения требуемого элемента, либо -1, если его нет в массиве.
1. Наивное решение — линейный поиск
Наивное решение состоит в том, чтобы выполнить линейный поиск в заданном массиве, чтобы определить, присутствует ли целевой элемент в массиве.
2. Использование потока Java 8
Мы можем использовать Java 8 Stream для поиска индекса элемента в массиве примитивов и объектов, как показано ниже:
3. Преобразовать в список
Идея состоит в том, чтобы преобразовать данный массив в список и использовать List.indexOf() метод, который возвращает индекс первого вхождения указанного элемента в этом списке.
4. Бинарный поиск отсортированных массивов
Для отсортированных массивов мы можем использовать Алгоритм бинарного поиска для поиска указанного массива для указанного значения.
5. Использование библиотеки Guava
Библиотека Guava предоставляет несколько служебных классов, относящихся к примитивам, например Ints для инт, Longs надолго, Doubles на двоих, Floats для поплавка, Booleans для логического значения и так далее.
Каждый класс полезности имеет indexOf() метод, который возвращает индекс первого появления цели в массиве. Мы также можем использовать lastIndexOf() чтобы вернуть индекс последнего появления цели в массиве.
Guava’s com.google.commons.collect.Iterables класс содержит статический служебный метод indexOf(Iterator, Predicate) который возвращает индекс первого элемента, удовлетворяющего предоставленному предикату, или -1, если итератор не имеет таких элементов.
Как найти индекс элемента в массиве java
Чтобы найти индекс элемента в массиве в Java , можно воспользоваться циклом for и проверять каждый элемент на равенство искомому. Как только элемент будет найден, можно вернуть его индекс. Если элемент не найден, можно вернуть -1 или выбросить исключение.
public static int findIndex(int[] arr, int element) for (int i = 0; i arr.length; i++) if (arr[i] == element) return i; > > return -1; // если элемент не найден >
Для того, чтобы найти индекс элемента в массиве в Java , можно использовать метод indexOf класса java.util.Arrays Этот метод принимает на вход массив и искомый элемент, и возвращает индекс первого вхождения элемента в массиве. Если элемент не найден, метод возвращает -1.
Например, чтобы найти индекс числа 42 в массиве numbers , можно написать следующий код:
int[] numbers = 10, 20, 30, 40, 42, 50>; int index = Arrays.indexOf(myArray, 42); // 4
How to find index of Element in Java Array?
You can find the index of an element in an array in many ways like using a looping statement and finding a match, or by using ArrayUtils from commons library.
In this tutorial, we will go through each of these process and provide example for each one of them for finding index of an element in an array.
Find Index of Element in Array using Looping Technique
Using While Loop
In the following example, we will use while loop to find the index of first occurrence of a given element in array. We shall use while loop to traverse the array elements, and when we find a match, we have the required index.
Java Program
public class ArrayExample < public static void main(String[] args) < int[] numbers = ; int element = 2; int index = -1; int i = 0; while(i < numbers.length) < if(numbers[i] == element) < index = i; break; >i++; > System.out.println("Index of "+element+" is : "+index); > >
If the given element is present in the array, we get an index that is non negative. If the given element is not present, the index will have a value of -1.
Using For Loop
In the following example, we will use for loop to find the index of a given element in array.
Java Program
public class ArrayExample < public static void main(String[] args) < int[] numbers = ; int element = 2; int index = -1; for(int i = 0; i < numbers.length; i++) < if(numbers[i] == element) < index = i; break; >> System.out.println("Index of "+element+" is : "+index); > >
If the given element is present in the array, we get an index that is non negative. If the given element is not present, the index will have a value of -1.
Find Index of Element in Array using Looping ArrayUtils
ArrayUtils.indexOf(array, element) method finds the index of element in array and returns the index.
Java Program
import org.apache.commons.lang.ArrayUtils; public class ArrayExample < public static void main(String[] args) < int[] numbers = ; int element = 2; int index = ArrayUtils.indexOf(numbers, element); System.out.println("Index of "+element+" is : "+index); > >
Conclusion
In this Java Tutorial, we learned how to find the index of an given element in the array, with the help of example Java programs.
How to Get an Index of an Array Element in Java
An array is a set of elements with the same data type and is treated as a fixed-size data structure. In Java, an array inherits the Object class and can be created dynamically. However, arrays are index-based, that’s why the first element of an array is stored at the zero indexes and the second element is at the first index, and so on.
This guide will illustrate the methods to get an index of an array element in Java.
How to Get an Index of an Array Element in Java?
To get an index of an array element in Java, you can use the below-mentioned methods.
Let’s understand the working of these methods one by one with examples!
Method 1: Get an Index of an Array Element Using Linear Search
Linear Search is simple to implement in cases when an array has fewer elements. This type of search can be performed on both single-dimensional and multi-dimensional arrays. When the index of a single array element is being fetched from an unordered list, linear search is proved more effective.
In this section, we will get an index of an array element by using a linear search with a “for” loop.
Syntax
The following syntax is used for the specified purpose:
Here, the loop starts from “0” and it will iterate until the length of the array.
Example
In this example, we will create an integer type array named “array” and initialize it with the following values:
We want to get the index of the array element “5”, so, we will store it in an integer type variable “item”:
As we know, the index of an array starts from 0, so we save “-1” in an integer type variable “index” that will increment in the loop by iterating elements in an array:
Here, we will iterate the array until the length of the array by using “for” loop and check the elements of the array to match with the variable “item” and store the matched “index” when the element of the array matches with “item”:
Finally, print the value of the “index” variable, which stores the index of the matched item:
The output shows that the “5” element of an array is stored at the “1” index:
Let’s see the other methods for getting an index of an array element in Java.
Method 2: Get an Index of an Array Element Using indexOf() Method
The “indexOf()” method of the “Arrays” class belongs to the java.util package and is also utilized to determine the particular element’s index in an array. This method fetches the index of the first instance of the added element. It first converts an array into an Array List using the “asList()” method and then calls the “indexof()” method.
Syntax
The syntax of the “indexOf()” method is given as:
Here, the “aslist()” method is called using the class name “Arrays” by passing an “array” to it as an argument, which converts it to an Array List and then calls the “indexOf()” method by passing the value for which we want to get the index.
Example
Firstly, create an integer type array named “array”. Note that there is an “Integer” wrapper class array, not a primitive “int” array, because the “aslist()” method takes a wrapper class as an argument, and it returns the primitive int values:
To get the index of the “14” element, we will use the “indexOf()” method of the Array class, convert it in an Array List and then store the matched index in the “getArrayIndex” variable:
Finally, print the index of an element using the “System.out.println()” method:
The output shows that the element “14” is placed at the “3” index of our array:
We checked the method to find the index of the element of an unsorted array. What if you have a sorted array? To get the answer to the stated question, follow the below-given sections.
Method 3: Get an Index of an Array Element in Java Using binarySearch() Method
The “binarySearch()” method is also used to get an index of the element of an array, but it is used for only sorted arrays. It is a predefined static method in Java that belongs to the Array class. It takes two parameters: an array and a value by which the index will be determined.
Note: The “binarySearch()” method is only used for the sorted array.
Syntax
Follow the below-given syntax for getting an index of an element of an array using binarySearch() method:
The specified method is called with the Array class, and it accepts a value that will be searched in the given array.
Example
Here, we have an array named “array” sorted in ascending order:
We will call the “binarySearch()” method by passing the array and the element “20” as an argument. The resultant index will be saved in the integer type variable “index”:
Lastly, we will print the index of the specified element on the console window:
The output shows that the element “20” is located at the “4th” index of an array:
We gathered all the essential instructions for getting an index of an array element in Java.
Conclusion
For getting an index of an array element, you can use three different methods: Linear search by using a loop, indexOf() method, and binarySearch() method. The common and useful method to get the index of an element is the indexOf() method. Whereas the binarySearch() method is used on sorted arrays, and linear search can be utilized with the unsorted array. In this guide, we have illustrated the methods for getting an index of an array element in Java with detailed examples.
About the author
Farah Batool
I completed my master’s degree in computer science. I am an academic researcher and love to learn and write about new technologies. I am passionate about writing and sharing my experience with the world.