有一段代码char[] animal = {'c', 's'};String animals = new String(animal);System.out.println(animals.toString());system.out:cs请教,从数组{'c', 's'}到输出“cs”,具体是怎么转化的,他的原理是什么。
2 回答
翻阅古今
TA贡献1780条经验 获得超5个赞
Arrays.copyOf() 调用的是 System.arrayCopy(),这是一个本地方法。
public static char[] copyOf(char[] original, int newLength) {
char[] copy = new char[newLength];
System.arraycopy(original, 0, copy, 0,
Math.min(original.length, newLength));
return copy;
}
public static native void arraycopy(Object src, int srcPos,
Object dest, int destPos,
int length);
至于为什么要使用本地方法进行数组的复制,主要是考虑效率。
添加回答
举报
0/150
提交
取消