如何通过Java中的命令行获取输入?

我目前有这个代码需要用户输入伪ify发送一些单词并在稍后对整数提交混淆。 我只需要获得用户输入。 任何人都有一个很好的api源来得到这个? 我想我应该寻找系统。 命令。

提前致谢 :)

Scanner类在Java 5.0中实现,以使输入更容易:

Scanner input = new Scanner(System.in) System.in将允许控制台输入。

 Scanner sc = new Scanner(System.in); int i = sc.nextInt(); /* will wait for input then assign it to the variable, * in this case it will wait for an int. */ System.out.println(i); // will print the variable 

http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Scanner.html

您可能希望使用Scanner类:java.util.Scanner

基本设置很简单:

 Scanner scan = new Scanner(System.in); int number = scan.nextInt(); 

这将设置扫描程序对象并使扫描程序从默认输入流中获取整数。 但是,这不会检查用户是否输入了“良好数据”。 如果用户输入除数字以外的任何内容,则会导致错误。 您可能希望在用户输入有效数据之前包含循环。

这是相同的代码,但有错误检查:

 Scanner scan = new Scanner(System.in); boolean validData = false; int number=0; do{ System.out.println("Enter a Number"); try{ number = scan.nextInt();//tries to get data. Goes to catch if invalid data validData = true;//if gets data successfully, sets boolean to true }catch(InputMismatchException e){ //executes when this exception occurs System.out.println("Input has to be a number. "); } }while(validData==false);//loops until validData is true 

该程序将要求用户输入一个数字。 如果用户输入错误数据,则抛出InputMismatchException,将程序带到catch子句并将skipData设置为true。 这将循环,直到输入有效数据。

希望这可以帮助。

你在找这个吗? 当你询问如何通过命令行获取输入时,如果你通过命令行运行你的java程序并想要传递一些输入,它们会被mainargs参数接收。 看这里

回应命令行参数

Echo示例单独在一行上显示其每个命令行参数:

 public class Echo { public static void main (String[] args) { for (String s: args) { System.out.println(s); } } } 

是的, System.in适用于少量可预测输入的命令。 如果你想要一个更专业/健壮的机制,Apache有一个很好的小工具。

请参阅: http : //commons.apache.org/proper/commons-cli/