반응형
배열에서 일치하는 문자열을 찾는 방법은 2가지 방법이 있다.
- contains()
- equals()
이 두가지 방법을 이용해 찾는 법을 알아보자
1. conatains()
import java.util.Arrays;
String [] arr = new String [] {"jun", "july", "may"};
String find = "may";
String find2 = "march";
System.out.println(Arrays.asList(arr).contains(find)); //true
System.out.println(Arrays.asList(arr).contains(find2)); //false
java.util.Arrays를 import 하여 사용하는 방법이다.
Arrays는 배열을 다룰 수 있는 다양한 메서드가 담겨있는 클래스로, 배열을 검색하거나 정렬할 때 쓰이게 된다.
asList()는 지정된 배열의 목록을 가져온다.
contains()는 List의 메서드로 해당 List에 있는 배열을 비교한다.
목록에 있으면 true를 반환, 없으면 false를 반환한다.
2. equals()
문자열을 비교할때 주로 쓰이는 메서드로
equals는 배열을 직접 가져오지 못하므로 반복문을 통해 배열을 하나하나 비교해준다.
String [] arr = new String [] {"jun", "july", "may"};
String find = "may";
boolean check = false;
for(int i=0; i<arr.length; i++)
{
if(find.equals(arr[i]))
{
check = true;
break;
}
}
System.out.println(check); //true
우리가 쉽게 아는 방법이지만
주의할 사항이있다.
equals()를 사용할 때 앞의 문자열이 null 이면 NullPointerException이 발생하게 된다. 앞은 ""처럼 공백이거나 무언가 값이 반드시 있어야 한다.
반응형
'Language > Java' 카테고리의 다른 글
[Java] BufferedReader, BufferedWriter / 자바 문자 입력받기 (0) | 2022.11.20 |
---|---|
[JAVA] HashMap 사용 (0) | 2022.08.03 |
[JAVA] 날짜 계산 (날짜 더하기, 날짜 빼기) (0) | 2022.07.15 |
[JAVA] Int to String, String to Int 형 변환 (0) | 2022.07.01 |
[JAVA] 에러 String index out of range (0) | 2022.05.31 |
댓글