前のセクションでは、String クラスの Split(String regex) を使用して文字列を分解する方法と、StringTokenizer クラスを使用して文字列内の単語を解析する方法を学習しました。このセクションでは、 Scanner クラスのオブジェクトの使用方法を学習します。文字列から解析するためのデータ。
プログラムで必要なデータを解析するには 2 つの方法があります。1 つはデフォルトの区切り文字タグを使用して文字列を解析する方法、もう 1 つは正規表現を区切り文字タグとして使用して文字列を解析する方法です。方法。
デフォルトの区切り文字タグを使用して文字列を解析するには、Scanner オブジェクトを作成し、解析する文字列を構築されたオブジェクトに渡す必要があります。次に例を示します。
StringNBA=ILoveThisGame;
NBA の単語を解析するために、Scanner オブジェクトを構築できます。
Scannerscanner=newScanner(NBA);
次に、スキャナはスペースを区切り文字として使用して文字列内の単語を解析します。解析操作の特徴は次のとおりです。
1) スキャナーはnext() メソッドを呼び出して NBA の単語を順番に返します。 NBA の最後の単語が next() メソッドによって返された場合、スキャナーは hasNext() を呼び出して false を返し、それ以外の場合は true を返します。
2) 解析された文字列内の数値単語 (123、1.23 など) の場合、スキャナは next() メソッドの代わりに nextInt() または nextDouble() メソッドを使用できます。つまり、スキャナは nextInt( ) または nextDouble() メソッド。数値ワードを int または double データに変換して返します。
3) 単語が数値単語ではない場合、スキャナが nextInt() または nextDouble() メソッドを呼び出すと、InputMismatchException が発生します。例外を処理するときに、next() メソッドを呼び出して非デジタル単語を返すことができます。