栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用Class对象创建通用二维数组

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Class对象创建通用二维数组

与如何在Java中创建通用数组相同?但扩展到2D:

import java.lang.reflect.Array;public class Example <T> {    private final Class<? extends T> cls;    public Example (Class<? extends T> cls) {        this.cls = cls;    }    public void arrayExample () {        // a [10][20] array        @SuppressWarnings("unchecked")        T[][] array = (T[][])Array.newInstance(cls, 10, 20);        System.out.println(array.length + " " + array[0].length + " " + array.getClass());    }    public static final void main (String[] args) {        new Example<Integer>(Integer.class).arrayExample();    }}

阅读上面JAB的注释后的注意:要扩展到更多维度,只需将[]和维度参数添加到newInstance()(cls是一个类,d1到d5是整数):

T[] array = (T[])Array.newInstance(cls, d1);T[][] array = (T[][])Array.newInstance(cls, d1, d2);T[][][] array = (T[][][])Array.newInstance(cls, d1, d2, d3);T[][][][] array = (T[][][][])Array.newInstance(cls, d1, d2, d3, d4);T[][][][][] array = (T[][][][][])Array.newInstance(cls, d1, d2, d3, d4, d5);

有关

Array.newInstance()
详细信息,请参见。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/454750.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号