プログラム例:
1. スキャナを使用してキーボードから整数または浮動小数点データを読み取ります
2. BufferedReader を使用してキーボードから文字列を読み取り、ファイル abc.txt に書き込みます。
JDK1.5スキャナクラスの説明
ScannerはSDK1.5で追加された新しいクラスですが、このクラスを利用してオブジェクトを作成することができます。
スキャナーリーダー=新しいスキャナー(System.in);
次に、リーダー オブジェクトは次のメソッド (関数) を呼び出して、ユーザーがコマンド ラインで入力したさまざまなデータ型を読み取ります。
next.Byte()、nextDouble()、nextFloat、nextInt()、nextLine()、nextLong()、nextShot()
nextLine() メソッドを使用して、スペースが含まれる可能性のある行を入力します。単語を読んでいる場合は、.next() メソッドを呼び出すことができます。
3. ScannerとBufferedReaderの違い
コマンド ライン モードでプログラムにデータを入力する場合、標準の入力文字列オブジェクト System.in を使用できます。ただし、System.in が提供する読み取りメソッドは一度に 1 単語しか読み取れないため、これを直接使用することはあまりありません。通常使用するのは文字列または数値を読み取ることなので、read メソッドによって提供される関数はあまり役に立ちません。
Java SE 6 では、Scanner クラスを使用してユーザー入力を取得できます。Scanner クラスは java.util パッケージにあります。Scanner を使用してユーザー入力を取得する場合は、インポート java.util.Scanner; を追加する必要があります。 .import のステートメント この関数は、java.util パッケージの Scanner クラスを使用することをコンパイラに指示します。
例を見てみましょう:
上記プログラムを実行すると、入力した文字列が以下のように表示されることがわかります。
このプログラムの各ステートメントの意味を見てみましょう。
new はオブジェクトを作成することを意味しますが、Scanner クラスのオブジェクトを作成する場合は、System.in を System と見なす必要があります。 in オブジェクトのサポーターである System.in は、ユーザーが入力したコンテンツを取得し、それを何らかの処理のために Scanner に渡します。
Scanner クラスにはいくつかのメソッドが提供されています。
next(): 文字列を取得します。
nextInt(): 取得した文字列を int 型の整数に変換します。
nextFloat(): 取得した文字列をfloat型に変換します。
nextBoolean(): 取得した文字列をブール型に変換します。
スキャナを使用してユーザー入力を取得するのは非常に便利ですが、スキャナはスペース キー、Tab キー、Enter キーなどのスペース文字に基づいて入力を取得します。これらのキーのいずれかが押されると、スキャナは次の入力に戻ります。コンテンツの途中にスペースがある場合、明らかに、Scanner を使用して入力された文字列を完全に取得することはできません。実際、Java SE では、BufferedReader クラスを使用して入力を取得することが考えられます。バージョン 1.4 以前では、Scanner メソッドはまだ提供されておらず、入力を取得するときに BufferReader も使用します。
BufferedReader クラスは java.io パッケージにあるため、このクラスを使用するには、java.io パッケージを導入する必要があります: import java.io.BufferedReader。
BufferedReader オブジェクトを使用する readLine() メソッドは、java.io.IOException 例外 (Exception) を処理する必要があります。
BufferedReader を使用して入力を取得するのは理解するのがはるかに複雑ですが、この方法は修正されており、毎回使用する前に同じ方法に従うだけです。
BufferedReader バッファ = new BufferedReader(new InputStreamReader(System.in));
文字列テキスト =buffer.readLine();
readLine() メソッドは、Enter キーを押す前にユーザーが入力したすべての文字を返します。ただし、Enter キーで最後に返された文字は除きます。
完全なサンプル プログラムは次のとおりです。
}
4. 次のプログラムに示すように: class StringTest
実行文の後に「java + クラス名」という内容を入力すると、argsで受け取られます。
args はコマンドラインパラメータを受け取るためです。