0

Java変数を評価する方法は?文字列が少ない文字列q1、q2、q3、q4、q5

for(i=1;i1<=5;i++){
//evaluate the value of q1,q2,q3,q4,q5 
system.out.println(q+i); //should print q1,q2,q3,q4,q5 values concurrently
}

私を助けてください。

4

5 に答える 5

1

彼は、flash の actionscript と javascript の eval 関数について言及していると思います。

それを使用すると、次のようなことができます

for (i = 1; i <= 4; i++){
     eval("func" + i + "( )");
}

func1()、func2()、func3()、func4() を呼び出します。同様に、文字列変数でこれを行うことができます。

Javaでこれを行うことはできません。これらの個別の変数をforループで出力する必要があると感じる場合は、最初にそれらを配列に入れるというEugeneの答えが最善の策です。

編集:私は自分の答えを入力していましたが、Ravinderの答えに気づきませんでした. その参照をありがとう。これまで ScriptEngine を使用したことがないので、確認する必要があります。

于 2012-04-09T19:48:00.477 に答える
0

Javaリフレクションを使用して、クラス内の定義済みフィールドをチェックできます。

例えばClass.getField(String)

于 2012-04-09T18:45:37.117 に答える
0

で関数にJava相当するものを見つけようとしているようです。はいの場合、Java で eval を使用する 際の回答が役立つ場合があります。evalJavaScript

于 2012-04-09T19:34:42.457 に答える
0

このコードはコンパイルされません。印刷しようとしているのは、i の値でインクリメントされた変数 q の値です。q はなく、i の値は必要ありません。

代わりに Eugene Retunsky のソリューションを使用してください。

于 2012-04-09T18:51:06.040 に答える