티스토리 뷰
728x90
반응형
아래의 코드를 보자.
String myString1="foo";
String myString2="";
if(myString1.contains(myString2)){
System.out.println("Am here");
} else {
System.out.println("Am not here");
}
foo 가 "" ( empty string ) 을 포함하냐는 것인데, 언뜻 보면 false
로 "Am not here" 가 실행될 것 같지만
컴파일 해보면 "Am here" 가 출력된다.
그 이유를 찾아보니 모든 문자열의 시작과 끝에는 공백 character 가 존재하기 때문이라고 한다.
이러한 이유로 String.contains(), String.indexOf() 를 빈 문자열과 같이 사용할 경우 원치 않는 결과를 발생 시킬 수 있다.
References
https://jeeva-paramasamy.blogspot.com/2012/04/contains-and-indexof-in-java-will.html
반응형
'프로그래밍 > Java' 카테고리의 다른 글
[Java] JDK 6 이후, Timezone.setDefault() (0) | 2019.08.25 |
---|---|
[Java] Type Safety : unchecked cast (0) | 2019.01.29 |
[Java] :: ( 더블콜론 ) (0) | 2018.12.12 |
[Java] Iterator (0) | 2018.12.12 |
[Java] parseInt() 와 intValue() 의 차이 (0) | 2017.11.01 |
공지사항
최근에 올라온 글