【发布时间】:2015-09-17 03:30:24
【问题描述】:
我正在遍历一个 ArrayList,并且我想为其中的每个值创建新的 JLabel。 JLable 名称应该是我列表中的一个值。
ArrayList<String> fieldsList = new ArrayList<String>();
for (int numberOfFields = 0; numberOfFields <= fieldsList.size(); numberOfFields++) {
String fieldName = fieldsList.get(numberOfFields);
JLabel "value from list"= new JLabel(fieldName + ":"); //here, in "" the name of JLabel should be the same as fieldName
}
可能有一个简单的解决方案,但我找不到它
【问题讨论】:
-
你做不到..那有什么用??
-
当我在问题中看到“获取或分配变量名”时,我总是感到畏缩。变量“名称”并不是那么重要,许多对象都不存在,并且几乎不存在于编译代码中。如果一个对象被多个变量引用,哪一个代表这个对象的“名称”?
-
更重要的是 object references 以及如何获得它们。如果您必须将对象与字符串相关联,一种简洁的方法是使用 Map,例如
HashMap<String, MyType>或HashMap<MyType, String>,具体取决于您希望将其用作键,但同样不要放太多依赖变量名,因为非最终变量可以随时更改引用,并且对象可以被多个变量引用。