質問: br.readLine()) != null && !str.isEmpty()); ⇒こっちは、aを入れても例外処理されないし、ctr+Z押して終了させると、やはりNullPointerExceptionが発生しますね
回答: とりあえずやってみたのですが、、、 double精度で小数点+カンマ区切りってなんかいい方法ないのか、うまく出来なかった。 知ってる人教えてください。。 ``` package testJava; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.text.DecimalFormat; public class Exercise3 { public static void main(String[] args) { String inputStr; double result = 1; System.out.println("積を求める数値を入力してください"); try { while (true) { double inputDub; inputStr = new BufferedReader(new InputStreamReader(System.in)).readLine(); if (inputStr.contentEquals("")) break; try { inputDub = Double.parseDouble(inputStr); } catch (NumberFormatException e) { System.out.println("数値を入力してください"); continue; } result = result * inputDub; } } catch (IOException e) { System.out.println("入出力例外が発生しました"); } System.out.print("入力された値の積 :"); DecimalFormat decimalFormat = new DecimalFormat("#,###"); System.out.print(decimalFormat.format(result)); String resultStr = String.valueOf(result); int index = resultStr.indexOf("."); if (!resultStr.substring(index).equals(".0")) { System.out.println(resultStr.substring(index)); } } } ```