为了账号安全,请及时绑定邮箱和手机立即绑定

关于String对象的问题

关于String对象的问题

qq_遁去的一_1 2019-03-12 17:15:06
有一段代码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);

至于为什么要使用本地方法进行数组的复制,主要是考虑效率。


查看完整回答
反对 回复 2019-04-18
  • 2 回答
  • 0 关注
  • 425 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信