2

わかりました...しばらく探していましたが、これに対する簡単な解決策が見つからないようです。

呼び出し時に渡された文字列を取り、それを IF 条件でブール式として評価しようとしています

$ Java MyProgram x==y

...
int x;
int y;
...
String stringToEval = args[0];
...
if(stringToEval){
    printSomething();
} else printNothing();
...

前もって感謝します

4

4 に答える 4

2

の値を解析し、args[0]および に適用できる式を作成するには、何らかの形式の式パーサーを使用する必要がxありyます。これを行うには、 JaninoJEXL、またはJevalなどを使用できる場合があります。入力が明確に定義されている場合は、小さなパーサーを自分で作成することもできます。

于 2013-10-31T11:22:10.690 に答える
-2

だから私が理解していることから、文字列 args[0] はブール値ですか? それをブール値にキャストしてみませんか?

boolean boolToEval = Boolean.parseBoolean(args[0]);
//OR
boolean boolToEval = Boolean.valueOf(args[0]);    

//THEN
(boolToEval ? printSomething() : printSomethingElse());
于 2013-10-31T11:14:47.393 に答える