我试图创建同一类的多个对象,但我希望对象名称(变量名称)从某个文件中获取。我该怎么做呢?
例如:Example one = new Example();
我想为多个对象做同样的事情,但我需要它们命名为one
, two
, three
, four
,…(在不知道对象的确切数量的情况下,我不能简单地复制粘贴它并将one
更改为two
,因为我正在从文件中读取它们)。有办法做到这一点吗?
您需要为您的名称创建一个"dictionary"文件(该文件将包含1:one, 2:two,…)
然后你必须解析这个文件并创建一个java文件:
public String createFileContent( List<String> variableNames ) {
StringBuffer buffer = new StringBuffer();
for( String name : variableNames ) {
buffer.append( "Example " );
buffer.append( name );
buffer.append( " = new Example();" );
buffer.append("n");
}
return buffer.toString();
}
对于更高级的代码生成,您可以考虑使用专门的技术,如https://developers.google.com/closure/templates/http://www.stringtemplate.org/或者更通用的解决方案:http://java-source.net/open-source/template-engines