我有一组记录,我想将其变量分配给 UI 中的一组标签。问题是我必须为要显示的每条记录编写重复的代码,例如:
label.setName1("")
label.setDate1("")
label.setName2("")
label.setDate2("")
有没有办法增加方法中的数字,即通过循环或其他方式在集合中记录的位置,这样我就不必在我的类中有重复的代码?
是的,使用java反射。您可以获取具有某些名称的类的方法,然后使它们为您工作。
MyClass.getMethods()
将返回您班级的所有方法。还有继承的方法。如果你只想要在你的类中声明的方法,你可以使用getDeclaredMethods()
(阅读这个)
这些将返回一个带有 Type Method的对象数组。之后,您可以为您的对象调用它们。
但我认为改变你的类结构并保留名称、标签和其他东西的数组而不是每个属性的单个属性会更好。