実行時にオブジェクトの名前を作成できません。私の声明は次のとおりです。
Map<String,String> objectName+""+lineNumber = new HashMap<String,String>();
コンパイル時エラーが発生します。HashMap
行番号に応じて実行時にオブジェクトを作成したい。
Javaはインタプリタではなく、コンパイルされた言語です。したがって、コンパイラはこれを処理する方法を知りません。このようなことは、スクリプト言語では意味があるかもしれません。
「変数」のカスタム名が必要な場合は、次のような構成が意味をなす可能性があります。
Map<String,Map<String,String>> varMap = new HashMap<String,Map<String,String>>();
varMap.put(objectName+" "+lineNumber, new HashMap<String, String>());
これをJavaで直接行うことはできません(主要なトリックなしで)
あなたができること(そしておそらくすべきこと):
'variable'名をキーとする別のマップにマップを配置します。
あなたが本当にそれをしたいのなら、あなたはコード生成をしなければなりません。この場合も、複数のオプションがあります。
Javaソースコードを生成してコンパイルします
その場でJavaバイトコードを生成します。利用可能なライブラリについては、 http: //java-source.net/open-source/bytecode-librariesのリストを参照してください。
動的なオブジェクト名を持つことは役に立ちません。
まず、参照に動的な名前を付けることはできません。より大きな問題は、なぜそれをやりたいのかということです。
学習と実験のためだけに、適切な演習に従うことをお勧めします。
ただし、プロジェクトの要件を達成しようとしている場合は、Pls. 要件を説明します。それを達成するための他の方法があります。