包装第1部分; 导入java.util.Scanner;
公共类Class1 {
public static void main(String [] args){
字符串a = args [1] ; //执行时,参数为-java Class1 1 2 3 4
System.out.println(a);
扫描仪扫描=新的扫描仪(System.in); // 用户输入为:1
int inputnumber = Scan.nextInt();
System.out.println(inputnumber);
// Scanner类是否可以替代命令行参数?
}
}
答案 0 :(得分:2)
在您提出问题的上下文中(即,与主要方法的参数进行比较),Scanner
类更适合交互式会话,在交互式会话中,用户可以以交互方式提供输入。但它也适用于流,文件和读取器等。
当用户通过手动启动程序与程序进行交互时,这更合适。
但是,即使程序以编程方式或通过调度程序等启动,main
方法的参数也可以发送到程序。
尽管可以对软件进行编程以将交互式输入发送到其他程序,但是主程序的参数在非交互式会话中可以更好地工作。
答案 1 :(得分:2)
命令行参数是进程的配置参数。它们可能会改变处理流程以及数据的处理方式。
扫描仪从输入流读取数据。这是要处理的实际数据,而不是配置。