У меня есть файл в виде:
2.3 2.5
1.4 4.5
....
NaN NaN
2.2 1.4
4.6 5.6
....
(2 столбца двойных значений, которые иногда равны «NaN»)
В основном я хочу разделить оба столбца на:
ArrayList<Double> x;
ArrayList<Double> y;
Хотя оба числа в столбцах не равны «NaN», я хочу добавить их в массив x и y. Когда BufferedReader читает строку:
NaN NaN
я хочу добавить ArrayList x и y к allX и allY.
ArrayList<ArrayList<Double>> allX;
ArrayList<ArrayList<Double>> allY;
Затем я хочу запустить новый ArrayList x и y и продолжать считывать в них данные, пока не дойду до другой строки NaN NaN (где я бы повторил описанный выше процесс) или до конца файла.
Итак, в конце концов, у меня осталось 2 ArrayLists из ArrayLists двойников, данные x и y.
Я не могу придумать, как это сделать, есть идеи?
Если это поможет понять мою проблему: данные файла — это данные широты и долготы для каждой границы страны в мире, каждая страна разделена (широта, долгота) = (NaN, NaN). Мне нужно разделить данные в ArrayList для каждой страны, которые все содержатся в родительском ArrayList.
В настоящее время у меня есть:
BufferedReader br = new BufferedReader(new FileReader(new File("file.txt")));
String line;
String[] data;
while((line=br.readLine())!=null){
data=line.split(" "); //A String array with x and y (could be x="NaN" y="NaN")
//How do I then process this?
}
new ArrayList()
, а чтобы добавить в список массивов вы пишетеlist.add(thingToAdd)
, возможно, вы думаете, что это намного сложнее, чем есть на самом деле. - person Peter Lawrey   schedule 20.10.2013