我正在编码一个接受ArrayList的函数,然后将每个char []复制到具有增加长度的另一个char []中,然后将新的char []添加到新的ArrayList中。当我尝试复制阵列时,该行中发生错误。我是语法使用不正确还是逻辑错误?
public ArrayList<char[]> sort(ArrayList<char[]> chars)
{
ArrayList<char[]> chars2 = new ArrayList<char[]>();
for (int i = 0; i < chars.size(); i++)
{
if (chars.get(i).length < chars.get(i + 1).length)
{
char[] c = chars.get(i).copyOf(chars.get(i), ((chars.get(i + 1).length - chars.get(i).length) + chars.get(i).length));
}
}
return chars2;
}
答案 0 :(得分:2)
对象char[]
没有.copyOf
方法。您可以将其替换为Arrays.copyOf(array, size)
int size = ((chars.get(i + 1).length - chars.get(i).length) + chars.get(i).length);
char[] c = Arrays.copyOf(chars.get(i), size);