[Java] String 변수 indexOf, contains 메소드 비교

이종현·2023년 9월 11일
0

JAVA

목록 보기
3/4

String형 변수에 특정 단어가 포함되어 있는지 확인할때 indexOf 메소드를 사용하거나, contains 메소드를 사용한다.

예시

String str1="a@123@b";
// indexOf
System.out.println(str1.indexOf("@123@")>-1);
System.out.println(str1.indexOf("@123@"));

// contains
System.out.println(str1.contains("@123@"));

차이점

사실 contains 메소드는 내부에서 indexOf 메소드를 호출해서 TRUE/FALSE를 반환하기 때문에 동작 원리는 동일하다.

그렇기 때문에 무엇을 선택할지 고민할때는, 특정 문자열이 들어가있는지만 확인하는 경우엔 contains 메소드를 사용해서 코드 가독성을 높이고, 들어가있는 위치까지 확인하는 로직이라면 indexOf를 사용하면 효율적인 코딩을 할수 있을 것 같다.

profile
백엔드 개발자의 소소한 개발 기록.

0개의 댓글