안드로이드 자바 개발 중 루프문 에러 문제
조회수 990회
private void playCode(String code) {
String tmp;
while(code != "") {
if(code.indexOf("f") == 2) { //코드 읽기
tmp = code.substring(0, 3);
code = code.substring(3);
} else {
tmp = code.substring(0, 2);
code = code.substring(2);
}
}
}
설명하자면 code라는 string이 있는데 (예를 들어 C4D4D4D4f 이런식으로 구성)
while문 안에서 code가 아무 문자도 남지 않을 때까지 2자 또는 3자씩 끊어 tmp라는 변수에 저장하고 기존의 code 변수에서 tmp에 저장된 부분 만큼 substring을 통해 지우려고 하거든요
그런데 위와 같이 코딩 후 컴파일하면 안드로이드 앱 실행 시 에러가 납니다 while문 내부의 코드를 지우면실행이 정상적으로 되긴 하는데... 왜이럴까요
-
(•́ ✖ •̀)
알 수 없는 사용자
1 답변
-
code 값을 반복해서 substring 하는데,
에러나는 시점의 code 길이가 2 또는 3보다 작을 경우 에러가 발생하겠네요.
- 앗 그런이유가 있었네요 한번 수정해보겠습니다 알 수 없는 사용자 2017.12.14 16:31
- while문 조건을 while(code.length()>2) 알 수 없는 사용자 2017.12.14 16:44
댓글 입력