Java 배열 색인
-
Java에서
Integer
유형 배열의 요소 색인 가져 오기 - Java에서 Java 8 Stream API를 사용하여 배열 요소의 인덱스 가져 오기
-
Java에서
ArrayUtils.indexOf()
를 사용하여 배열 요소의 인덱스 가져 오기
이 기사에서는 다양한 기술을 사용하여 Java에서 배열의 인덱스를 얻는 방법을 소개합니다.
Java에서Integer
유형 배열의 요소 색인 가져 오기
Java에서 배열에 대한indexOf()
메소드는 없지만ArrayList
는 지정된 요소의 색인을 반환하는이 메소드와 함께 제공됩니다. indexOf()
함수에 액세스하려면 먼저Integer
배열을 생성 한 다음Arrays.asList()
를 사용하여 목록으로 변환합니다.
asList()
는 래퍼 클래스 만 허용하지만 결과를 기본 데이터 유형으로 반환하기 때문에 기본int
대신 래퍼 클래스Integer
를 사용합니다. 인덱스를 얻기 위해indexOf()
메소드에 8 요소를 지정하는 다음 예제를 확인할 수 있습니다. getIndex
에서 얻은 결과는int
유형입니다.
import java.util.Arrays;
public class ArrayIndexOf {
public static void main(String[] args) {
Integer[] array1 = {2, 4, 6, 8, 10};
int getIndex = Arrays.asList(array1).indexOf(8);
System.out.println("8 is located at " + getIndex + " index");
}
}
출력:
8 is located at 3 index
Java에서 Java 8 Stream API를 사용하여 배열 요소의 인덱스 가져 오기
Stream API를 사용하여 배열 항목을 필터링하고 지정된 요소의 위치를 가져올 수 있습니다. IntStream
은 프리미티브int
가filter
및range
와 같은 Stream 함수를 사용할 수 있도록하는 인터페이스입니다.
range()
는 시작 위치부터 배열 끝까지 요소를 반환하는IntStream
의 메서드입니다. 이제 우리는 술어를 인자로받는filter()
를 사용합니다. i -> elementToFind == array1[i]
를 술어로 사용합니다. 여기서i
는range()
에서받은 값이고elementToFind == array1[i]
는elementToFind
는array1
의 현재 요소와 일치합니다.
findFirst()
는 첫 번째 요소를 반환하고orElse()
는 조건이 실패하면 -1을 반환합니다.
import java.util.stream.IntStream;
public class ArrayIndexOf {
public static void main(String[] args) {
int[] array1 = {1, 3, 5, 7, 9};
int elementToFind = 3;
int indexOfElement = IntStream.range(0, array1.length)
.filter(i -> elementToFind == array1[i])
.findFirst()
.orElse(-1);
System.out.println("Index of " + elementToFind + " is " + indexOfElement);
}
}
출력:
Index of 3 is 1
Java에서ArrayUtils.indexOf()
를 사용하여 배열 요소의 인덱스 가져 오기
이 예제는 Apache Commons Library에 포함 된ArrayUtls
클래스를 사용합니다. 아래 종속성을 사용하여 라이브러리 함수를 프로젝트로 가져옵니다.
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.11</version>
</dependency>
배열의 인덱스를 찾기 위해ArrayUtils
클래스의indexOf()
함수를 사용합니다. indexOf()
는 두 개의 인수를받습니다. 첫 번째 인수는 배열이고 두 번째 인수는 인덱스를 찾고자하는 요소입니다.
import org.apache.commons.lang3.ArrayUtils;
public class ArrayIndexOf {
public static void main(String[] args) {
int[] array1 = {1, 3, 5, 7, 9};
int elementToFind = 9;
int indexOfElement = ArrayUtils.indexOf(array1, elementToFind);
System.out.println("Index of " + elementToFind + " is " + indexOfElement);
}
}
출력:
Index of 9 is 4
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn