Как разобрать значение Double из объекта сканера в цикле и передать в новый массив? - PullRequest
0 голосов
/ 20 июня 2010

Хорошо, я немного ближе, но все еще получаю несколько ошибок. Netbeans говорит мне, что мой loanArray не инициализирован и не может найти метод readLine ()? Кроме того, моя попытка закрыть в моем блоке finally - это список ошибок. Вот мой код -

// generate 2 constants for use in the array lookup values.
final int YEARS = 0;       
final int INTEREST = 1;
        //create the array
        double loanArray[][];

        try{    
            FileReader readTerms = new FileReader ("MortgageTerms.txt");
            BufferedReader loanTerms = new BufferedReader(readTerms);
            java.util.Scanner termScan = new Scanner(loanTerms);
                while(termScan.hasNext()){
                            for(int i=0;termScan != null; i++)
                        loanArray [i][YEARS]= Integer.parseInt (termScan.readLine());
                        loanArray [i][INTEREST] = Double.parseDouble (termScan.readLine());
                    }
            } catch (FileNotFoundException e){
                javax.swing.JOptionPane.showMessageDialog(null,
                "Error, File not found");
                        return;
              } catch (IOException ex){
                  javax.swing.JOptionPane.showMessageDialog(null, "There was an IO error");
                  return;
                  }
                    finally{
                     if (termScan!=null){
                            termScan.close();
                         }
                    }

Ответы [ 2 ]

2 голосов
/ 20 июня 2010

Вам нужно инициализировать массив, например так:

double loanArray[][] = new double[size1][size2];

Кроме того, сканер имеет метод nextLine(), который возвращает следующую строку.

2 голосов
/ 20 июня 2010

Почему вы не верите компилятору?Вам нужно что-то вроде этого:

double loanArray[][] = new double[MAX_TERMS][2];

И termScan объявляется в блоке try, так что к моменту, когда вы, наконец, доберетесь, он выходит за рамки.Объявите это вне попытки.

Это выглядит для меня как плохая абстракция, которая не в состоянии извлечь выгоду из объектов.

Проценты должны быть двойными;годы должны быть Int.Оба должны быть инкапсулированы в объект Условия или Ссуды и сохранены в Списке.Ваша матрица парных чисел - плохой выбор дизайна.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...