我希望程序中的某些代碼僅在用戶在命令行中輸入字符'*'作爲命令行參數時才能運行。這是我所使用的代碼: -java在args [0]中讀取「*」作爲.class文件
//myfile.java
import java.io.*;
public class myfile {
public static void main(String[] args) {
if(args[0].equals("*")){
//do stuff
System.out.println(args[0]);//added this line to see what exactly was being passed
}
}
}
,當該程序通過輸入在命令行下執行: -
java myfile *
我期待看到屏幕上的輸出星號字符,而不是顯示的輸出是'myfile.class'。我哪裏錯了?爲什麼Java將星號更改爲.class文件? 另外,請注意,該程序完美執行前四次我執行它,然後開始這樣做!
在此先感謝您的幫助。
你的shell會這樣做:它將*展開到當前目錄中的所有文件。 Java與它無關。 –
像'java myfile'*''一樣運行你的程序。 – Siguza
謝謝你的幫助! –