java将字符串[]数组添加到另一个字符串[]数组
我的一个方法在循环中返回String[]数组。循环继续时,我想将这些字符串[]数组添加到另一个字符串[]数组中。我想要下面给出的类似的东西。它导致类型不匹配:无法从字符串[]转换为字符串错误
String[] searchResultList = new String[25];
int count = 0;
for (...) {
String[] resultList = getArray(parameter);
searchResultList[count] = resultList;
count++;
}
# 1 楼答案
您的问题是,您试图在一个存储
String
的数组中存储一个String[]
,即一个字符串数组,多个字符串,即仅存储单个字符串。你可以直接把一个袋子放进另一个袋子里,你需要先把袋子里的东西拿出来所以你需要做的是:
resultList
数组中的条目逐个添加到searchResultList
数组中searchResultList
数组的大小以保存所有新值或者,更好的解决方案是use a ^{} ,因为它们会自动增长,并允许您一次添加多个项目:
# 2 楼答案
这里,resultList是数组。。 但searchResultList[count]是字符串。。 因此,您会得到“无法从字符串[]转换为字符串错误” 你能用的更好
。。 用这个。现在你可以用声明
# 3 楼答案
你应该使用ArrayUtils。addAll(…)将所有元素从一个数组添加到另一个数组
# 4 楼答案
你的
searchResultList
变量存储了String
个元素,但是你尝试向它添加一个String[]
,所以这是正常的为什么不让
searchResultList
成为ArrayList<String>
,同时getArray()
也返回这样的数组列表呢?这样,你所要做的就是searchResultList.add(getArray(parameter));
# 5 楼答案
您已经尝试将字符串数组的元素设置为另一个字符串数组。你不能那样做
要么你需要把你的
searchResultList
变成一个数组的字符串数组(String[][]
),要么你需要把resultList
中的所有字符串复制到searchResultList
无论你选择哪种方式,你都应该考虑使用^ {< CD5>}而不是数组…这样就不需要硬编码数组大小的任意上限,因为列表可能会增加
# 6 楼答案
你说你需要使用String[]而不是List。但没有什么可以阻止您在方法内部使用List并返回数组,例如