Java: удалить двойной из строки и сохранить в массиве - PullRequest
0 голосов
/ 13 сентября 2009

У меня есть строка, которая будет отличаться каждый раз, но следовать форме -3,33, -46.53,37.39,26.55,97.11,68.46, -32,46, -5,89, -62,89, -7,9, и я хочу удалить каждое число и хранить как двойной в массиве. даже псевдокод был бы хорош, я рисую пробел. Приветствия

Ответы [ 3 ]

4 голосов
/ 13 сентября 2009
 String[] doubles = myString.split(",");

затем выполните итерацию по массиву doubles и выполните Double.parseDouble ();

1 голос
/ 13 сентября 2009

Альтернативный способ, читает входные данные из файла и анализирует элементы по мере их чтения.

static java.util.ArrayList<Double> getData(String filename) throws FileNotFoundException {
    java.util.ArrayList<Double> result = new java.util.ArrayList<Double>();
    java.util.Scanner sc = new java.util.Scanner(new java.io.File(filename));

    sc.useDelimiter(",");
    while (sc.hasNext())
        result.add(Double.parseDouble(sc.next()));
    sc.close();

    return result;
}

Если вы хотите, вы можете просто сохранить их в массиве, как:

    Double data[] = null;
    getData("input.dat").toArray(data);
0 голосов
/ 13 сентября 2009

Может быть что-то вроде:

String[] sa = yourString.split(",");
Double[] da = new Double[sa.length];
int idx = o;
for(String s : sa) {
   da[idx++] = Double.parseDouble(s); 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...