main函數(shù)必須要帶參數(shù)(String[] args)嗎?
public static void main(String[] args),我看所有的main函數(shù)聲明都寫成這樣,前面的都好理解,只有這個(gè)參數(shù)(String[] args)必須要帶嗎?能不能不帶,或者換成其他的參數(shù)?這個(gè)參數(shù)有何用,main函數(shù)調(diào)用的時(shí)候又用不著他,再說也沒人給main函數(shù)傳參呀。
public static void main(String[] args),我看所有的main函數(shù)聲明都寫成這樣,前面的都好理解,只有這個(gè)參數(shù)(String[] args)必須要帶嗎?能不能不帶,或者換成其他的參數(shù)?這個(gè)參數(shù)有何用,main函數(shù)調(diào)用的時(shí)候又用不著他,再說也沒人給main函數(shù)傳參呀。
2018-07-12
舉報(bào)
2018-07-12
String[] args是main函數(shù)的形式參數(shù),可以用來獲取命令行用戶輸入進(jìn)去的參數(shù)。java 本身不存在不帶String args[]的main函數(shù),java程序中去掉String args[]會出現(xiàn)錯(cuò)誤。
建個(gè)test類 在cmd中運(yùn)行時(shí)輸入java test a b c,并且在你的main函數(shù)里面加這段話:System.out.println("arg is"+args[0]+" "+args[1]+" "+args[2]),然后看看輸出是什么?
是不是:
This is a simple Java program
arg is a b c
***********test.java*******************
public class test {
public static void main(String[] args) {
System.out.println("This a java program!");
System.out.println("arg is"+args[0]+" "+args[1]+" "+args[2]);
}
}
********cmd*****************
C:\>javac test.java
C:\>java test a b c
This a java program!
arg isa b c
綜上,main必須要帶String args[]。
2018-07-18
C++跟C語言就可以不帶? 隨你 int main()? void main()
2018-07-12
是的,你可以理解為一種規(guī)范。main函數(shù)是程序運(yùn)行的入口