1.単一文字入力を取得します—System.in
注:System.inは、単一の文字のみを受け取り、その文字のASCLL値を出力できます。文字を出力する必要がある場合は、タイプ変換を強制する必要があります。
番号を受け取る
public static void scaneNum(){
int scane = 0;
System.out.print("请输入数据:");
try {
scane = System.in.read();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("输入的数据为:" + scane);
}
実行結果:最初の番号のみを受け取る
キャラクターを受け取る
public static void scaneChar(){
char scane = '0';
System.out.print("请输入数据:");
try {
scane = (char)System.in.read();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("输入的数据为:" + scane);
}
実行結果:最初の文字のみが受信されます
package testScane;
public class test {
public static void main(String[] args) {
//scaneNum();
scaneChar();
}
public static void scaneNum(){
int scane = 0;
System.out.print("请输入数据:");
try {
scane = System.in.read();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("输入的数据为:" + scane);
}
public static void scaneChar(){
char scane = '0';
System.out.print("请输入数据:");
try {
scane = (char)System.in.read();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("输入的数据为:" + scane);
}
}
2.文字列入力の行を取得します:スキャナー
注:スキャナーを使用する場合は、スキャナーパッケージをutilにインポートする必要があります。①next
()メソッドを使用して、ユーザーが入力した文字列を取得します
。②NextInt()は、取得した入力文字列を整数型に
変換します。③NextFloat()は、浮動小数点型に変換します
(デフォルトでは小数点以下2桁が予約されています)。④NextBoolean()はブール値に変換されます。タイプ
package testScane;
import java.util.Scanner;
public class test1 {
public static void main(String[] args) {
scane();
scaneInt();
scaneFloat();
scaneBool();
}
public static void scane() {
System.out.print("请输入数据:");
Scanner scan = new Scanner(System.in);
String read = scan.nextLine();
System.out.println("输入的数据为:" + read);
}
public static void scaneInt() {
System.out.print("请输入整形数据:");
Scanner scan = new Scanner(System.in);
int scanInt = scan.nextInt();
System.out.println("输入的数据为:" + scanInt);
}
public static void scaneFloat() {
System.out.print("请输入浮点型数据:");
Scanner scan = new Scanner(System.in);
float scanFloat = scan.nextFloat();
System.out.println("输入的数据为:" + scanFloat);
}
public static void scaneBool() {
System.out.print("请输入数据:");
Scanner scan = new Scanner(System.in);
boolean scanBoolean = scan.nextBoolean();
System.out.println("输入的数据为:" + scanBoolean);
}
}
操作結果:
注:next()とnextLine()の違い
- next()メソッドはスペースを受け入れません。有効なデータを受信する前に、すべてのスペース、タブキー、およびその他の入力は無視されます。最初の有効なデータを受け取った後、スペースまたはタブを押すと、Enterキーを押して終了するまで、それ以降の入力は無効になります。
- nextLine()はスペースキーまたはタブキーを受け入れることができ、その入力はEnterキーで終了します。
package testScane;
import java.util.Scanner;
public class test4 {
public static void main(String[] args) {
scan1();
scan2();
}
public static void scan1(){
Scanner scan = new Scanner(System.in);
String str = scan.next();
System.out.println(str);
}
public static void scan2(){
Scanner scan = new Scanner(System.in);
String str = scan.nextLine();
System.out.println(str);
}
}
動作結果:
3.文字列入力の行を取得します:BufferedReader
package testScane;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class test3 {
public static void main(String[] args) throws IOException {
scane();
}
public static void scane() throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String scane = null;
System.out.print("输入数据:");
scane = br.readLine();
System.out.println("您输入的数据为:" + scane);
}
}
動作結果: