올바른 eqals() 사용법
2014. 2. 7. 12:51
반응형
-
java에서 빈번하게 상용하는 비교함수 equals()
변수.equals(비교문자열)
이 형태는 변수의 값이 절대적으로 null이 나오지 않을 경우에는 상관이 없다
하지만 requst.getParameter()를 사용해서 변수의 값을 초기화 한다거나 변수의 값이 null 이 들어올 수 있다.
변수.equals(비교문자열) 이 형태에서 변수에 null 이 들어오게 되면 Exception 이 발생 한다.
비교문자열.equals(변수)
형태로 문자열을 비교한다면 변수에 null 이 들어와도 Exception 이 발생하지 않는다.(false 출력됨)
이유는 문자열을 비교할때 주체가 되는 대상이 달라진다.
변수.equals(비교문자열) : 변수가 주체가 되어서 문자열 비교
비교문자열.equals(변수) : 비교문자열이 주체가 되어서 문자열 비교
public void eqals(){
String testVal = null;
String result = "";
/* Exception 발생 */
//if( !(testVal.equals("")) ) result = "1";
/* 정상 */
if( !("".equals(testVal)) ) result = "2";
}
반응형
'Programming > Java' 카테고리의 다른 글
[Java] GMT/UTC 날짜 변환 (1) | 2015.04.08 |
---|---|
[오류]Setting property 'source' to 'org.eclipse.jst.jee.server:프로젝트명' did not find a matching property (0) | 2014.04.08 |
[Java] split 문자열 나누기 (0) | 2014.02.05 |
java e.printStackTrace 로그 남기기 (0) | 2014.01.17 |
[Java] ImageIO 활용한 이미지 저장 (0) | 2014.01.17 |