猿问

关于String对象的问题

有一段代码


char[] animal = {'c', 's'};

String animals = new String(animal);

System.out.println(animals.toString());


system.out:cs

请教,从数组{'c', 's'}到输出“cs”,具体是怎么转化的,他的原理是什么。


qq_遁去的一_1
浏览 426回答 2
2回答

翻阅古今

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);至于为什么要使用本地方法进行数组的复制,主要是考虑效率。
随时随地看视频慕课网APP

相关分类

Java
我要回答