런타임시 String weapon = dataz[1];
라인에서 경계 밖의 배열 인덱스 예외가 발생합니다. 이것이 이전 과제에서 사용했던 코드와 거의 같기 때문에 이것이 무엇을 유발하는지 확신 할 수 없습니다. 왜 이런 일이 일어나고 있는지에 대한 모든 논리는 대단히 감사하겠습니다!어레이가 경계를 벗어나는 이유를 잘 모르는 경우 Java
public Hero[] getHeroes(){
String file = getFilePath();
Hero[] heroPower = new Hero[5];
int i=0;
try{
Scanner data = new Scanner(file);
while(data.hasNextLine() && i < 5)
{
String next = data.nextLine();
if(!next.trim().isEmpty())
{
String[] derp = next.split(",");
String name = derp[0];
String weapon = derp[1];
int attackPoints = Integer.parseInt(derp[2]);
heroPower[i] = new Hero(name,weapon,attackPoints);
i++;
}
}
data.close();
} finally {
}
return heroPower;
}
}
'다음'의 내용은 무엇입니까? – rgettman
'데이터 '란 무엇입니까? 게시 한 코드에는 없습니다. – CPerkins
입력란에 쉼표가없는 행이 있음을 의미합니다. –