【发布时间】:2012-12-09 00:36:54
【问题描述】:
我有一个名为 Bird 的类,它由 3 个字符串字段组成,每个字段都是不同语言的名称,例如 Bird.lang1、Bird.lang2、Bird.lang3。我有一个名为 allbirds 的 Bird 实例。
现在我想用用户选择的语言制作一个字符串列表ListOfAllBirds,其中包含所有鸟类的名字,存储在lang变量中,其值为lang1、@987654329之一@,lang3。我需要这样做数百次(调用这个次数N)。
当然,我可以对所有 Bird 元素进行迭代,并将相应的字段添加到 lang 的字段中。但这意味着在3 x N x Bird.size()(即数十万!!)条件查询中测试用户选择的语言。
我可以做类似的事情
varfield = lang.toField();
for (Bird birdy : allbirds)
ListOfAllBirds.add(birdy.varfield);
也就是说,我可以用变量引用一个字段吗?这将为我节省大量的条件查询!
谢谢!
【问题讨论】:
-
你不能将字符串存储在字符串数组中并通过索引访问它们吗?
-
@MAV:当然。但这将如何节省我的资源?这难道不意味着在任何情况下都有许多操作吗?
-
@LuisA.Florit 如果您的语言设置是对应于正确索引的 int,它会很好用。
-
@Vulcan: 不,
lang是一个字符串。 -
然后将其更改为与每种语言对应的
int,并采用该方法。
标签: java dynamic reference field