2009-08-20 11 views
0

こんにちは私は以下の要件を持っています。Javaのリフレクションを通じて変数variableNamesを持つ変数の変数番号を作成できますか?

存在するレベルの数に基づいて、メソッド内で可変数の文字列配列を作成したいと考えています。 たとえば、

私は変数numOfLevels(int)をjspページから受け取りました。私が作成したいこれに基づき

String[] level1; 
String[] level2; 
String[] level3; 
String[] level4; 

などを...

私は私の要件は、ハッシュマップで扱うことができると私は最終的にそれを行うに頼ってきたけど、私はこれをJavaでのリフレクションでどのように実現できるかについては興味があります。

事前に感謝します。


コメンターが指摘したようにHMMが、ほぼ同様の質問が貴重な入力の人々のためのIs there away to generate Variables' names dynamically in Java?

おかげで依頼されました!

答えて

3

反射は何を表示するだけで、変更することはできません(ミラーに反映された内容のみが表示されるため、ミラーを変更しても元のオブジェクトは変更されません)。

クラスを変更するには、バイトコードを変更する必要があります。そのライブラリ(cglib)がありますが、それは心がかすかではありません。あなたの場合は、地図が正しい解決策です。

6

静的言語は実行時に変数を宣言できません。

は何を使用する場合がありますこと

String[][] level = new String[numOfLevels][]; 

level[0] = ... 
level[1] = ... 
level[2] = ... 
level[3] = ... 
関連する問題