indexOf contains 등이 작동을 이상하게 합니다.
조회수 445회
//hm.get("name"): "1_01.wav"
//sound_list: ["1_00.wav","1_01.wav"]
//값은 위와 같습니다.
Log.d("asdf", String.valueOf(sound_list.contains(hm.get("name")))); //-1
Log.d("asdf", String.valueOf(sound_list.contains("1_01.wav"))); //2
Log.d("asdf", String.valueOf(sound_list.contains(hm.get("name")))); //false
Log.d("asdf", String.valueOf(sound_list.contains("1_01.wav"))); //true
ArrayList 에서 특정 값의 위치를 가져오려 합니다. 특정 값은 HashMap에서 get으로 뽑아 왔습니다.
그런데 위 코드 첫번째 케이스 처럼 contains에 넣을경우 false를, indexOf에 넣을경우 -1을 반환합니다.
그러나 위 코드의 두번째 케이스처럼 contains나 indexOf의 입력 값에 hm.get("name")과 같은 값을 직접 넣으면 정상적으로 작동합니다.
이건 도대체 무슨 경우죠???
-
(•́ ✖ •̀)
알 수 없는 사용자
댓글 입력