JAVA
[java] Array/List 에서 값 검색하기
kiwiiiv
2021. 9. 12. 19:22
1) Arrays.BinarySearch(배열, 검색할 값)
<이진 검색 알고리즘> 을 사용하여 값을 검색하는 것이기 때문에
정렬된 배열에 대하여만 사용이 가능
int index=Arrays.binarySearch(arr,"string");
시간복잡도 : O(logn)
++
검색 값에 대하여 배열 안에 존재하지 않는 데이터를 검색하는 경우 ArrayIndexOutOfBoundsException 예외 발생 가능
2) ArrayList.indexOf()
List 자료구조에서만 해당 메소드를 지원함. (O(n))
int index=list.indexOf("string");
배열을 다음과 같이 asList() 메소드를 통하여 변환시킨 후 메소드를 사용할 수도 있음
int index=Arrays.asList(arr).indexOf("string");
+
존재 여부만 검색할 때
contains() method
(O(n))
boolean isContain=list.contains("string");