Javaプログラミング:入力を取得する3つの方法

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);
    }
}

動作結果:
ここに写真の説明を挿入

おすすめ

転載: blog.csdn.net/KaiSarH/article/details/108598152