繁体   English   中英

JAVA使用变量值作为实例名称

[英]JAVA Using a variable value as an Instance name

所以基本上我正在读一个文件,该文件的每行包含对两种类型的对象的3至5个实例的描述,其中2至4个是第一个对象,最后一个是另一种类型。 该文件最多可以包含500行。 我将重用每个对象,从1到未知对象,但要重复数百次,我需要跟踪它们的状态。

虽然我可以将所有数据放入一个数组中,并且仅使用5个对象不断地更改其值,这将使跟踪其参数的每种组合的状态变得相当困难。

我想要的是使用诸如FromLine1Obj1,FromLine10Obj3之类的名称创建实例。

我没有提到一个事实,即一行中的每个对象集也应该创建一个新线程,并且该对象集在该线程中进行处理。

您需要使用地图。

Map<String, MyObject> map = new ....

map.put("FromLine1Obj1", new MyObject());

MyObject mo = map.get("FromLine1Obj1");

如果您一次读取该文件,但它毕竟不会改变-您可能需要进行一些代码生成,例如http://cglib.sourceforge.net/

您不能使用以名称为关键字的地图吗?

您可以将解析结果存储在映射中,使用所需的名称作为关键字,并使用创建的实例的值作为值,这是Java中名称间接处理的一种简便方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM