Java のスキャナー クラスの詳細な紹介

王林
リリース: 2019-11-26 13:13:43
転載
3373 人が閲覧しました

Java のスキャナー クラスの詳細な紹介

1.スキャナ実装手順

ステップ 1: 有効なコードの最初の行で、import を通じて Scanner クラスをインポートします。

import java.util.Scanner;
ログイン後にコピー

ステップ 2: 新しいキーワードを使用して Scanner オブジェクトをインスタンス化します。

Scanner input = new Scanner(System.in);
ログイン後にコピー

--> 唯一の変数は入力変数名です。

ステップ 3: Scanner オブジェクトを通じて Scanner クラスのメソッドを呼び出し、コンソールでユーザーが入力したコンテンツを取得します

Java 関連のビデオ チュートリアル: Java 学習

基本データ型のデータを取得

input.nextByte();–> 获取用户在控制台输入的内容,返回数据类型为byte类型!
input.nextShort();–> 获取用户在控制台输入的内容,返回数据类型为short类型!
input.nextInt();–> 获取用户在控制台输入的内容,返回数据类型为int类型!
input.nextLong(); --> 获取用户在控制台输入的内容,返回数据类型为long类型!
input.nextFloat(); --> 获取用户在控制台输入的内容,返回数据类型为float类型!
input.nextDouble();–> 获取用户在控制台输入的内容,返回数据类型为double类型!
input.nextBoolean(); --> 获取用户在控制台输入的内容,返回数据类型为boolean类型!
ログイン後にコピー

--> ユーザーがコンテンツを入力して Enter キーを押すと、最初のスペースの前のコンテンツを取得します。

参照データ型のデータを取得

input.next(); --> 获取用户在控制台输入的内容,返回数据类型为String类型!
ログイン後にコピー

--> ユーザーがコンテンツを入力して Enter キーを押すと、最初のスペースの前のコンテンツを取得します。

input.nextLine(); --> 获取用户在控制台输入的内容,返回数据类型为String类型!
ログイン後にコピー

--> ユーザーがコンテンツを入力して Enter キーを押すと、コンテンツの行全体が取得されます。

2. Scanner 使用上の注意事項

a) Scanner メソッドを実行すると、コードの実行がブロックされます。ユーザーがデータを入力して Enter キーを押すと、Scanner メソッドはユーザーが入力したコンテンツを取得して等号の左側の変数に保存し、コードのブロック効果を終了します。

b) ユーザーの身体検査を改善するために、Scanner クラスのメソッドを呼び出す前にプロンプ​​ト テキストを出力します。ユーザーに入力を求めるプロンプトを表示します。

c) 入力コンテンツは、Scanner メソッドの呼び出しによって返されるデータと一致している必要があります。そうしないと例外がスローされます。

d) nextChar() メソッドは Scanner クラスには提供されていません。ユーザーが入力した文字を取得する必要がある場合は、カスタマイズを通じて取得できます。

Scanner がよく遭遇するいくつかの落とし穴

1. まず nextInt() で年齢を取得し、次に nextLine() で名前を取得します。年齢を取得した後、名前は存在しません。プログラムに入って終わりにしましょう!

原因:

nextLine() メソッドを実行すると、まずメモリに改行文字が含まれているかどうかがチェックされ、改行文字が含まれている場合は直接取得します。改行文字。ユーザー入力がなければ文字以前の内容、メモリ内の改行文字は取得完了後に読み込まれます。

解決策:

年齢を取得したら、まず nextLine() メソッドを実行して、次に名前を取得します。

2. ユーザーがコンソールに入力した文字を取得するにはどうすればよいですか? ? ?

理由: スキャナーは nextChar() メソッドを提供していないため、文字を取得する操作を自分で完了する必要があります。

解決策:

a) まず、ユーザーが入力した文字列を取得します --> Scanner クラスの next() または nextLine() メソッド

b)文字列の最初の文字を取得します。 --> String クラスの charAt(index) メソッド

例は次のとおりです:

import java.util.Scanner;
public class ScannerDemo02 {
	public static void main(String[] args) {
		
		Scanner input = new Scanner(System.in);
		System.out.print("请输入年龄:");
		int age = input.nextInt();
		System.out.println("年龄:" + age);
		// 获取用户输入的姓名
		input.nextLine(); // 先用nextLine()方法吃掉内存中的换行符!
		System.out.print("请输入姓名:");
		String name = input.nextLine();
		System.out.println("姓名:" + name);
	}
}
ログイン後にコピー

その他の Java 関連記事については、こちらをご覧ください:Java 開発の概要

以上がJava のスキャナー クラスの詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:csdn.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート