我现在正在帮助别人学习Java。我是一名高级C#开发人员。我一般都了解编程,但我不了解Java API。
Web上关于如何从控制台读取int的大多数建议都很复杂。它涉及BufferedReader
和InputStreamReader
等。这对于初学者来说是完全不可理解的。
我想为他提供一个功能static int readIntFromConsole()
。这个功能的主体是什么?
答案 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;
}
}
//编辑:提供所需的方法