0

ユーザーが A、B、C、D を選択できるように、このコードを作成しました。この選択がクエリされ、結果が文字列に保存され、後でメインで使用されます。私がする必要があるのは、ユーザーが A のような選択を行い、A から結果を取得した後、終了ではなく最初から選択をやり直すことができるようにすることです。たとえば、A を選択してからクエリを実行すると、文字列でいくつかの結果が得られます。次に、次のようなものが必要です。

System.out.println( " さらに選択しますか? はいまたはいいえを入力してください"); はいの場合は、既に追加されている文字列値を失うことなく、最初に戻ります。それを達成するための最良の方法は何ですか?

    public static void query() {

    String selec ;

            boolean c=true;
            selec = user_input.next( );

            int z = Integer.parseInt(selec);
            while(c){   
                if(z==1){
                    selec="A";
                    c=false;
                }else if(z==2){
                    selec="B";
                    c=false;
                }else if(z==3){
                    selec="C";
                    c=false;
                }else if(z==4){
                    selec="D";
                    c=false;
                }else{
                    System.out.println("Invalid Choice");

                    selec = user_input.next( );
                }
            }


    if (selec=="A") {
   final String queryString =...

List<String> strA = new ArrayList<String>() ;

    }else if (selec=="B") {...

final String queryString =...

    List<String> strB = new ArrayList<String>() ;

    }else if ...
    }
    }

    public static void main(String[] args) {
    new class.query();
    ...
    }
4

3 に答える 3

0

単純な if ステートメントを使用できます。

System.out.println( " Make more selections? Type Yes or No");
//receive input

if(input.equals("Yes")) {
  query();
};

これをクエリ メソッドの末尾近くに配置します。それがうまくいくことを願っています。

于 2013-09-18T15:03:22.157 に答える
0

do-whileループを使用して、続行する前に状態を確認できます。

何かのようなもの:

do{

//Here goes your code

System.out.println( " Make more selections? Type Yes or No");
//Read the input
}while(input);
于 2013-09-18T14:45:17.500 に答える
0

関数の一番下の if/else ステートメントの下にこれを追加しますquery

//Ask if user wants to continue and get input
System.out.println("Make more selections? Type Yes or No");
selec = user_input.next();
//If user enters 'Yes' then have them enter new selection and run query again
if(selec.equalsIgnoreCase("Yes")) {
    System.out.println("Enter next selection: ");
    query();
}
于 2013-09-18T14:57:01.133 に答える