[JAVA] 자바 String 값 비교(==연산자와 equals( ))Web_Backend2022. 3. 23. 09:54
Table of Contents
0. 상황
ajax로 view페이지에서 받아온 파라미터 값 중 String값이, 내가 원하는 값과 같은지 비교하기 위해 비교연산자 '=='를 사용하였으나, 입력하는 값을 원하는 값을 입력하였음에도 불구하고, if문에서 조건문에 통과 되지 않아 false처리되어 원하는 방향과 다르게 논리구조가 흘러갔다.
1. 에러코드 전문
에러코드 없음. 논리 오류로 원하는 값이 안 나올 뿐이었다.
2. 원인
- JAVA에서 String값은 call by reference로, ==연산자를 사용할 경우 두 비교 대상의 '주소값'을 비교하게 되어있다.
3. 해결방안
1) 따라서 '주소값 비교' 가 아닌, '값 비교'를 하기 위해선 equals 메서드를 사용해야 한다.
즉, 조건문을 수정해준다.
if(userid.equals("abcd") && userpwd.equals("1234")) {
4. 결과(정상 작동!)
'Web_Backend' 카테고리의 다른 글
[Spring, JAVA] Validation (0) | 2023.06.20 |
---|
@Yanako :: Yana's coding story였는데요, 우당탕탕 개발일지가 맞는것같
야나의 코딩 일기장 :) #코딩블로그 #기술블로그 #코딩 #조금씩,꾸준히
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!