打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
泛型 反射 类型 new String[0]

ArrayList类,toArray(),new String[0].getClass()


错误语法:new String[]

new String[].getClass()会报错array initializer expected,即需要初始化。

创建一个数组时需要指定容量,

String[] strArray = new String[]这样写也会报错array initializer expected。


代码使用:list.toArray(T [] t)

List<URL> urls = new ArrayList<>(archives.size());

return createClassLoader(urls.toArray(new URL[0]));

转自https://www.cnblogs.com/grey-wolf/p/13253014.html

ArrayList源码

    public <T> T[] toArray(T[] a) {

        if (a.length < size)

            return (T[]) Arrays.copyOf(elementData, size, a.getClass());

        System.arraycopy(elementData, 0, a, 0, size);

        if (a.length > size)

            a[size] = null;

        return a;

    }




数组描述符:[L类名;

class com.web.Student

class [Lcom.web.Student;

[代表array。

Lxxx;代表类型,由于类可以有任何名称,因此很难识别它是什么类,因此L开头,拼接类名,以;结尾


JVM数组描述符

[Z = boolean

[B = byte

[S = short

[I = int

[J = long

[F = float

[D = double

[C = char

[L = any non-primitives(Object)


要获取主要数据类型,您需要:

[Object].getClass().getComponentType();

如果"对象"不是数组,它将返回null。

要确定它是否为数组,只需调用:

[Any Object].getClass().isArray()

要么

Class.class.isArray();


转自https://www.codenong.com/5085889/

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Java反射机制获取父类属性
将java中数组转换为ArrayList的方法实例(包括ArrayList转数组)
Java中List转换为数组,数组转List
【翻译】使用LINQ来简化编程的7个技巧
List、Set、数组之间的转换
字符数组和List的互相转化
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服