我有一个数组,根据一些用户选择,内容可能会有所不同。 其中一个数组看起来像这样:
String[] get_elements = { "firstname", "lastname", "address", "status" };
在静态函数中,为了得到我需要的东西,我会这样做:
String name = c.getString(JSON_NAME);
String address = c.getString(JSON_ADDRESS);
String status = c.getString(JSON_STATUS);
现在,我想要做的是根据数组的内容设置一个字符串,如下所示:
for (int x = 0; x < get_elements.length; x++) {
String get_elements[x] = c.getString(get_elements[x]);
}
该数组包括:firstname,lastname,address和status。 所以我想最终得到一个循环 - 将它们定义为字符串并为这些字符串赋值,最后是rawcode:
string firstname = c.getString("firstname");
等等。我尝试过使用String get_elements [x] = c.getString(get_elements [x])而没有运气。 有没有办法根据数组内容动态创建字符串?
答案 0 :(得分:0)
您正在替换数组中的现有元素。相反,试试这个:
String result_elements = new String[get_elements.length];
for (int x = 0; x < get_elements.length; x++) {
result_elements[x] = c.getString(get_elements[x]);
}
希望它能解决你的问题。
答案 1 :(得分:0)
不,你不能。您尝试使用数组的方式是您可以尝试与此类似的方法。
String[] elements=new String[4];
for (int x = 0; x < get_elements.length; x++) {
elements[x] = c.getString(get_elements[x]);
}
答案 2 :(得分:0)
您无法在运行时构建执行新的Java代码。此外,单个String firstname
包含c.getString("firstname")
而没有任何进一步信息的重点是什么?您最好在需要唯一返回值的地方使用c.getString("firstname")
。
您必须拥有有关哪些数据与哪个索引相对应的信息。除了事实之外,以名称"Carter"
为例,数组中的索引数可能会根据用户的选择而有所不同。如果"Carter"
是名字或姓氏,你将如何检查?