크리스 KELI :
내가 파일에 읽고 그것에서 부품을 얻으려고 노력하지만,있어 그래서 난 줄에서 위의 오류가 계속
arrayLocations [I] = 새 위치 (사용해 Double.parseDouble (xArray [1]) 사용해 Double.parseDouble (xArray [2]))
int total;
BufferedReader bfr;
String lineObtained = null;
Location[] arrayLocations = null;
try {
bfr = Files.newBufferedReader(path);
lineObtained = bfr.readLine();
} catch (IOException e) {
e.printStackTrace();
return null;
}
String split = lineObtained.split("POSTAL_OFFICE")[1];
String[] y = split.split(" ");
double xCoord = Double.parseDouble(y[0].trim());
double yCoord = Double.parseDouble(y[1].trim());
Location postOffice = new Location(xCoord, yCoord);
String split1 = lineObtained.split("WORKER_ADDRESS")[1];
String[] y1 = split.split(" ");
double xCoord1 = Double.parseDouble(y1[0].trim());
double yCoord1 = Double.parseDouble(y1[1].trim());
Location home = new Location(xCoord, yCoord);
split = lineObtained.split("POSTAL_ADDRESSES")[1].trim();
String[] splits = split.split("\\r?\\n");
for(int i = 0; i < splits.length; i++) {
String[] xArray = splits[i].split(" ");
arrayLocations[i] = new Location(Double.parseDouble(xArray[1]), Double.parseDouble(xArray[2]));
}
PWPInstance instance = new PWPInstance(total, arrayLocations, postOffice, home, random);
return instance;
페데리코 정보 Klez Culloca :
당신은 선언 arrayLocation
으로 null
그것을 초기화하지 않습니다.
당신은 아마 뭔가를 원하는
Location[] arrayLocations = new Location[splits.length];
그건 당신이 배열 필요로 얼마나 큰 알고 당신이 그것을 사용하는 첫 번째 장소와 장소이기 때문에 그냥 루프 전에 (이 필요한 때 방법의 시작 부분에 선언 할 필요없이, 선언).