標籤:
在下面這個程式中String args[]起什麼作用?我學過C++,String args[]與C++中的什麼類似?如果是C++,想要輸出字串只要在下面寫cout<<"...."<<endl;就可以了,void main()中的括弧為空白,而java中為什麼要寫String args[]呢?class Example{ public static void main(String args[]){ System.out.println("This is a simple Java program."); }}
既然String args[]或者String[] args表示給主方法傳一個字串數組,那麼System.out.println(args[]);為什麼是錯誤,args[]不就是那個字串This is a simple Java program嗎? String args[]與This is a simple Java program是什麼關係?如果沒關係,為什麼程式中去掉String args[]會出現錯誤? 不帶String args[]的main函數和帶String args[]的main函數有什麼區別嗎?詳細講一下吧,
String[] args 這個字串數組是儲存運行main函數時輸入的參數的,例如main函數所在的類名為test 那麼你在cmd運行 java test a b c 時,args[0] = a ,args[1]=b, args[2]=c 你就可以在你的程式中調用你輸入的這些變數了。args[]不就是那個字串This is a simple Java program嗎?-------完全不是的,你理解不對。這樣好了,你在啟動並執行時候加個參數,比如 java test XX。然後在你的main函數裡面加這段話:System.out.println("arg is"+args[0]),然後看看輸出是什嗎?是不是這個:This is a simple Java programarg is XX你還可以試試這樣,在運行時輸入java test xx yy zz,並且在你的main函數裡面加這段話:System.out.println("arg is"+args[0]+" "+args[1]+" "+args[2]),然後看看輸出是什嗎?是不是:This is a simple Java programarg is xx yy zz現在你理解了嗎。。。如果沒關係,為什麼程式中去掉String args[]會出現錯誤?--------之所以去掉會出錯在於,不帶String args[]的main函數和帶String args[]的main函數,本質上已經不是同一個函數了,java 本身不存在不帶String args[]的main函數,所以當然出錯了。
java程式中String args[]起什麼作用?