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

String 형의 숫자 간 비교

0 추천

이 코드를 통해 

numberAdapter.getItem(i).getNumber() == (String.valueOf(number_except))

어뎁터(numberAdapter)에 있는 i번째 아이템 숫자를 가져온 것과 number_except라는 textView에 입력한 숫자와 비교를 하려고하는데

(*numberAdapter => numer_except라는 textView에 숫자들을 입력해 저장버튼 누르면 리사이클러뷰에 표시하기 위해 만든 어뎁터(numberAdapter)입니다.)

2자리 숫자까지는 정상적으로 비교 연산자를 통해 true 인지 false인지 잘 구분하는데

3자리 숫자부터는 값이 서로 같아도 false고 달라도 false 입니다.

왜그러는지 알수 있을까요?   String형이 2자리 숫자까지 밖에 안되는 그런게 있나요?

 

 

 

쿠롱 (400 포인트) 님이 2022년 11월 28일 질문

1개의 답변

+1 추천

String은 Object이구요,  equals 메소드를 이용해서 비교를 하셔야 해요.

numberAdapter.getItem(i).getNumber().equals(String.valueOf(numer_except)

 

숫자 타입으로 비교하고 싶다면, 먼저 같은 타입의 숫자로 변환한 다음, 비교하세요.

int adapterNumber = Integer.parseInt(numberAdapter.getItem(i).getNumber())

//  adapterNumber와 numer_except는 int 타입인 걸로 가정함.
adapterNumber == numer_except

 

spark (226,380 포인트) 님이 2022년 11월 29일 답변
spark님이 2022년 11월 29일 수정
도움이 정말 많이 되었습니다. 감사합니다!
...