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

안드로이드 list 문자열 자르는 부분 간단한 질문드립니다.

0 추천
  
list.add(id+"_"+data);

int listSize = list.size();
  
  
  for(int j=0; j<listSize; j++){
   
  
   String[] dataData = list.get(j).split("_");
   
   
   Log.i("id: data", dataData[0]+": "+dataData[1]);
   
  }

 

안녕하세요. 리스트 공부중에 궁금한 점이 생겨서 질문 드립니다.

위의 코드처럼 리스트로 저장된 문자열을 나누려고합니다.

리스트에는 총 10개의 데이터가 들어가있고 id_data 식으로 구성되어 있습니다.

위의 코드를 돌리면

ArrayIndexOutOfBoundsException: length=1; index=1

이라는 에러가 나는데 왜 그런건지 궁금합니다.

그리고 저런식으로 해서 출력은 안되나요? 해결 방안 있으면 조언 부탁드립니다.

pptang_0_ 님이 2015년 1월 29일 질문

1개의 답변

+1 추천
 
채택된 답변

아마도 오류가 터지는 부분은 Log 를 찍는부분이 아닐까 싶습니다.

말인즉 dataData[] 에 값이 잘못 들어가있다는 말이고, list 에 있는 10개의 데이터 중 ID<구분자>DATA 형식에서 벗어난 내용이 있어서가 아닐까 의심됩니다.

올리신 for 문을 아래와 같이 수정해보시면 어떠실지요?

for(int j=0; j<listSize; j++){
    String item = list.get(j);
    Log.i("raw data", item); // 여기에서 찍히는 값을 확인해보시면 답이 나오지않을까 싶습니다.
    String[] dataData = item.split("_");
    Log.i("id: data", dataData[0]+": "+dataData[1]);
}
비애천사 (12,080 포인트) 님이 2015년 1월 29일 답변
데이터 형식에 맞지않는 내용이 들어가있었네요 감사합니다!
...