마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드/자바 스트링 비교 질문드립니다

0 추천

해시코드를 서버에서 뽑고 네이티브에서 뽑아서 두값을 비교하려하는데 

왜 출력이 false로 나오는지 모르겠습니다.

 

둘다 타입을 봤을땐 스트링형태 확인했는데도 이해가안가네요

 

Log.e("#############", 
response.getString("hash_code") + 
"   "  
+getHashKey() +   getHashKey().equals(response.getString("hash_code")));

해당부분 로그입니다.
 E/#############: 8D1MxJaCJEu5hWG4D/vN9fe8bIM=   8D1MxJaCJEu5hWG4D/vN9fe8bIM=
    false
 
 
치킨무한 (180 포인트) 님이 2020년 12월 3일 질문
스페이스 문제 아닌가요? 첫번째 해시값 앞에 공백들이 있어 보이고 두번째 거는 없어 보이는데.
String localHash = getHashKey() + getHashKey();
String remoteHash = response.getString("hash_code");
localHash.trim().equals(remoteHash.trim());

해당 라인에 브레이크 포인트 걸어놓고 디버깅을 해보세요, 그래야 정확하게 어떻게 다른지 알 수 있을 듯.
trim 적용하니까 되었네요 감사합니다.

첫번쨰 해시값에 공백이아니라 줄바꿈 문자가 포함되어있었네요...
로그로 확인하니까 줄바꿈문자는 미처 확인을못했었어요;;
감사합니다

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...