arg[]数组用来储存运行main函数时输入的各个参数。例如在命令行中运行main函数所在的类test时,添加若干参数如下:
$ java test a bb cccc
则arg[]中,arg[0]是a,arg[1]是bb,arg[2]是ccc。
那么当没有命令行参数的时候可不可以不写args[]?答案是不可以。
我认为理由如下:main函数是程序执行时第一个执行的函数,因此没有其他函数可以给它传参;另外,编译器不知道程序执行时会不会有参数输入,因此没有string args[]的main函数会报错。