この問題の答えを探してみましたが、何を探すべきか完全にはわかりません。基本的に私が欲しいのは、私のプログラムのユーザーが(コマンドラインに)入力できるようにすることです。
java galaxySim HELP
そして私のプログラムがファイル形式やものについていくつかのことを彼らに伝えるために。それ以外の場合、最初の引数はファイル名です。したがって、これを実行する必要があるコードは次のとおりです。
if (args[0] == "HELP") {
System.out.printf("Help Stuff...");
}else{
filename = args[0];
System.out.printf("Filename found");
}
これは、これに影響を与えるとは思わないエラー処理にカプセル化されているため、記述していません。問題はこれです:私が最初の引数として入力するものは何でも、それは常にelseステートメントに行きます。
引数の前後にスペースを追加してみましたが、役に立ちません。私が書いているかのように、それが私のIFステートメントの問題であるとは思わない
if(args[0] == args[0]){
その後、正しいステートメントに移動します。まるで
args[0] == "Help"
常にfalseです。おそらく何らかのエンコーディングの問題がありますか?それが違いを生むなら、私はwin7を使用しています。
それはプログラムの重要な部分ではありませんが...それがうまくいったらいいのにと思います。誰もがここで何が悪いのか知っていますか?
ありがとう!