2

コンソール入力に何かが書き込まれているかどうかを確認するにはどうすればよいですか? コードは続きますが、私が書くと、何か新しいことが起こりますか? 出来ますか?

Scanner k2sk;
k2sk = new Scanner(System.in);
k2sk.nextLine();

しかし、コードは私が何かを書くまで待機します

4

3 に答える 3

2

ユーザー入力を待ちたいが、同時にそれを待ちたくない場合は、その義務を別の に割り当てるだけThreadです。

ここに短い例を示しました。役に立つことを願っています。

import java.util.Scanner;
public class TestInput {

    public static void main(String[] aa)
    {
         new Thread(new T1()).start();
         System.out.println("MOVED FURTHER");
    }

    public static class T1 implements Runnable
    {

        public void run() {

            Scanner k2sk;
            k2sk = new Scanner(System.in);
            k2sk.nextLine();
            System.out.println("DONE");
        }
    }
}
于 2013-07-31T17:02:52.530 に答える
0

入力を読み取った後もスレッドを実行し続けたい場合は、別のスレッドを専用にして入力 を非同期で読み取ることをお勧めします。

于 2013-07-31T16:49:01.177 に答える