有人可以说,为什么main方法中的args是String类型。在
public static void main(String args[]){
}
我的意思是,为什么它不是int或float或其他东西。我被问到同样但却找不到合适的答案。
答案 0 :(得分:5)
您可以通过控制台运行带有参数的java程序,如下所示:
java YourClass first second third
在java程序中,您可以通过String args[]
使用它。
public static void main(String[] args) {
Arrays.asList(args).forEach(System.out::println);
}
输出:
first
second
third
但没有必要使用这样的名字。声明main
方法签名的方法很少:
public static void main(String... args)
public static void main(String[] strings)
public static void main(String [] args)
为什么它不是int或float或其他东西?在命令提示符下,该命令被认为是字符串。
答案 1 :(得分:3)
我会给你我的意见。
答案 2 :(得分:3)
当我们编写java filename.java时,这意味着你将你的文件名提供给要调用main方法的java编译器,很明显你给出的文件名是一个字符串。
另一端如果要同时向编译器提供任何参数,它也将是字符串而不是整数或任何其他数据类型。
答案 3 :(得分:3)
因为String可以很容易地转换为任何类型。如果它是int并且您想要将double作为输入,那么这将如何发生?但是使用String,您可以转换为您期望的任何内容。