在Java中,main()方法除了字串陣列外,還能接受其他引數嗎?
公共靜態void main()方法接受來自使用者的**String**型別的數值陣列。
public class{
public static void main(String[] args){
}
}您可以在執行時,在類名之後用空格隔開傳遞它們,例如:
java ClassName 10 20 30
然後,在程式(main方法中),您可以從String陣列中提取這些值並使用。
示例
例如,您可以使用命令列引數在上述程式中傳遞a和b,例如:
public class Sample {
public static void main(String[] args){
int a = Integer.parseInt(args[0]);
int b = Integer.parseInt(args[1]);
int c = a+b;
System.out.println("Sum of the two numbers is "+c);
}
}輸出
您可以編譯並執行程式,透過命令提示符在執行行傳遞值,如下所示:

main方法的其他引數
您可以使用除了String以外的其他引數編寫public static void main()方法,程式也能編譯透過。
由於main方法是Java程式的入口點,因此每當您執行一個程式時,JVM都會搜尋main方法,該方法是公共的、靜態的,返回型別為void,並且引數為String陣列。
Public static void main(String args[]){
}如果缺少任何一項,JVM都會引發錯誤。因此,如果您使用其他資料型別(除了String陣列)作為引數編寫方法,在執行時,JVM不會將此新方法視為Java的入口點,並會生成錯誤。
示例
在下面的Java程式中,我們嘗試使用整數陣列作為main方法的引數。
public class MainExample {
public static void main(int args[]) {
System.out.println("Hello how are you");
}
}輸出
執行此程式時,會生成以下錯誤:
Error: Main method not found in class MainMethodExample, please define the main method as: public static void main(String[] args) or a JavaFX application class must extend javafx.application.Application
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP