我的老師想要運行類似於這樣的「java方法-r事實3」來獲得階乘3的結果並能夠更改-r至-d以顯示獲取的過程結果而不僅僅是結果。將標誌設置爲java上的方法
我找不到如何爲每個類「分配」-r或-d或者名稱是什麼。有人可以幫忙嗎?我是新來的。
我的老師想要運行類似於這樣的「java方法-r事實3」來獲得階乘3的結果並能夠更改-r至-d以顯示獲取的過程結果而不僅僅是結果。將標誌設置爲java上的方法
我找不到如何爲每個類「分配」-r或-d或者名稱是什麼。有人可以幫忙嗎?我是新來的。
args
main
方法的數組包含命令行參數。 -r
或-d
將位於args
的位置0。你想要這樣的東西:
public static class CalculateFactorials {
public static void main(String[] args) {
if (args[0].equals("-r")) {
factorial();
}
else if (args[0].equals("-d")) {
factoriald();
}
}
public static void factorial() {
//calculate factorial
}
public static void factoriald() {
//calculate factorial while showing process
}
}
完美,謝謝!爲此,factorial和factoriald必須位於同一個文件中,對嗎?我有他們單獨的,但我相信我可以複製和粘貼兩種方法的主要。 – Abby
是的,但您不必將它們放在同一個文件中。如果它們是兩個不同的類文件,則可以通過'object.method()'創建對象並調用適當的方法,或者如果這些方法是靜態方法,則可以在不創建對象的情況下調用它們,如'ClassName.staticMethod ()'。 – badjr
謝謝我試着寫: 'if(args [0] .equals(「 - r」)&& args [1] .equals(「fact」)){ fact(); ' 但它在事實行上顯示「期望的方法調用」。我試圖複製下面的事實代碼,但它不起作用。我也嘗試寫'fact.staticMethod(); '它不能解決staticMethod,我不知道我是否做錯了什麼。 – Abby
ie。命令行參數? https://docs.oracle.com/javase/tutorial/essential/environment/cmdLineArgs.html –
是的,有點像。所以我有兩個類,例如factorial和factoriald,我將如何使「-r」運行階乘和-d運行factoriald? – Abby