0

私はJavaアプリのソースコードを持っていますが、ここにコードを書くアプリと同じエラーが発生します。どちらもこれを取得します:「スレッド「メイン」java.util.NoSuchElementExceptionの例外」これを修正すると、プライマリJavaアプリで問題を修正できます。

このJavaアプリを実行すると、一度実行され、do-whileループに戻るとエラーが発生します。" スレッド "main" java.util.NoSuchElementException での例外 "

コード:

public static void main (String args[]) {
    int c=-1;
    Scanner input=new Scanner(System.in);
    do{
        System.out.println("1- Sum");
        System.out.println("2- Sub");
        System.out.print("Enter your selection : > ");
        c=input.nextInt();
        res(c);
    }while(c!=0);
    input.close();
}

public static void res(int c) {
    switch (c) {
    case 1:
        System.out.println("++++++++++");
        sum();
        break;
    case 2:
        System.out.println("----------");
        sub();
        break;

    default:
        break;
    }
}
public static void sum() {
    float a,b,c;
    Scanner in=new Scanner(System.in);
    System.out.println("enter two number :");
    System.out.print("first number : ");
    a=in.nextInt();
    System.out.print("second number : ");
    b=in.nextInt();
    c=a+b;
    System.out.println(a+" + "+b+" = "+c+"   END.");
    in.close();
}
public static void sub() {
    float a,b,c;
    Scanner in=new Scanner(System.in);
    System.out.println("enter two number :");
    System.out.print("first number : ");
    a=in.nextInt();
    System.out.print("second number : ");
    b=in.nextInt();
    c=a-b;
    System.out.println(a+" - "+b+" = "+c+"   END.");
    in.close();
}

誰かがこれを修正するのを手伝ってくれますか?

4

2 に答える 2

0

一度スキャナーを開いたほうがいいと思います

  • プライベート静的フィールドとして使用し、
  • メインの開始時に初期化し、
  • 最後に閉じて、
  • 普通に呼んでください。

幸運を

于 2013-10-18T20:40:10.887 に答える