より良い方法であるJavaでユーザー入力を取得するには?コンソールの使用によるJava I/OのInputStreamReaderまたはConsole
reader = new BufferedReader(new InputStreamReader(System.in));
または - >Console c = System.console();
2とどちらが使用されるの違いは何です。あるいは、これらの2つ以外の方法がありますか?
より良い方法であるJavaでユーザー入力を取得するには?コンソールの使用によるJava I/OのInputStreamReaderまたはConsole
reader = new BufferedReader(new InputStreamReader(System.in));
または - >Console c = System.console();
2とどちらが使用されるの違いは何です。あるいは、これらの2つ以外の方法がありますか?
コンソールはJava(Java 6)に最近導入され、コマンドラインへの読み書きを容易にしました。したがって、私はコンソールを使用します。
しかし、コンソールには、ユーザーからの情報(パスワードなど)を安全に読み取るための追加の方法があり、基本的なプラットフォームがコンソール操作を実際にサポートしているのか、非対話型環境
私はコンソール
Scanner in = new Scanner(System.in);
in.next();
int i = in.nextInt();
float f = in.nextFloat();
double d = in.nextDouble();
String s = in.nextLine();
や他の美しい方法
からのユーザ入力を取得するためにあなたにScannerクラスを示唆するが、これら二つの間のIあなたにお勧めしますコンソール
IMHO彼らは完全に異なっています。ドキュメントが言うように:文字ベース コンソールデバイスにアクセスするための
方法を、もしあれば、現在のJava仮想マシンに を関連します。
したがって、実装はOS固有であり、プラットフォームに依存しない(存在していてもいなくてもよい)。コンソル付き
も、あなたは標準入力から読み込むことができません。
echo 123 | java Test
テストが、それは動作しませんコンソールを使用している場合。したがって、ユーザはコンソールからの入力を与えなければなりません。