如何以初学者友好的方式从控制台读取int?

时间:2016-02-15 21:39:20

标签: java

我现在正在帮助别人学习Java。我是一名高级C#开发人员。我一般都了解编程,但我不了解Java API。

Web上关于如何从控制台读取int的大多数建议都很复杂。它涉及BufferedReaderInputStreamReader等。这对于初学者来说是完全不可理解的。

我想为他提供一个功能static int readIntFromConsole()。这个功能的主体是什么?

3 个答案:

答案 0 :(得分:5)

尝试以下方法:

Scanner scanner = new Scanner(System.in);

System.out.print("Enter some integer:\t");

int myIntValue = scanner.nextInt();

为了在测试应用程序的整个生命周期内使用,您可以执行以下操作:

public void scanInput() {

    Scanner scanner = new Scanner(System.in);

    while (true) {
        System.out.print("Enter some integer:\t");
        int myIntValue = scanner.nextInt();
        System.out.print("You entered:\t" + myInteValue);
    }
}

答案 1 :(得分:3)

您是在谈论从控制台读取用户输入吗?在这种情况下,您可以使用Scanner类。

Scanner stdin = new Scanner(System.in);
int input = stdin.nextInt();

如果您想获取不同的输入,则无需初始化新的扫描仪。在这种情况下,您可以使用与扫描仪不同的方法,具体取决于您想要的值。

System.out.println("Enter a double: ");
double myDouble = stdin.nextDouble();
System.out.println("Enter a string of characters: ");
String myString = stdin.next();
System.out.println("Enter a whole line of characters: ");
String myEntireLine = stdin.nextLine();

答案 2 :(得分:2)

参见此示例

import java.util.Scanner;

public class InputTest {

    public static void main(String[] args) {

        //Now using the readIntFromConsole()

        int myNumber = readIntFromConsole();
        System.out.println(myNumber);
    }

    public static int readIntFromConsole() {
        System.out.print("Enter an integer value....");
        Scanner s = new Scanner(System.in);
        int number = s.nextInt();
        return number;
    }

}

//编辑:提供所需的方法