java中array如何初始化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中array如何初始化相关的知识,希望对你有一定的参考价值。

java.lang.reflect.Array类,谢谢
jdk6 API中解释Array类是动态创建和访问java数组,那么Array类型变量与char【】有什么区别,char【】可以这样初始化 char【】=‘h’,‘e’,‘l’,‘l’,‘o’,那么Array变量怎么初始化,谢谢了

构造函数是 私有的,不能直接调用的!

通过 调用 静态方法,newInstance来 生成 该类的一个实例,
这个函数的第一个参数 是 创建的数组的类型,
第二个参数是 数组的形式 :数字就是 一维数组;
定义多维要这样定义:
//dims的长度就表示了数组的维数,如这里的是三维
int[] dims = new int[] 5,10,15;
//array其实就是个三维数组对象了
Object array = Array.newInstance(Integer.TYPE, dims);

Class clazz = Class.forName("java.lang.String");
//创建一个长度为10的字符串数组,在Java中数组也可以作为Object对象
Object array = Array.newInstance(clazz, 10);
参考技术A jdk6 API中解释Array类是动态创建和访问java数组,也就是说它是定义来对数组进行操作的类,并不是说它本身就是数组。char[]数组是一个数组,你可以用Array类来操作你定义的char[]数组,比如
char[] c = 'h', 'e', 'l', 'l', 'o';
Array.set(c, 0, 'y');
那么c就变成了 'y', 'e', 'l', 'l', 'o';

Array类的方法都是静态的,不用实例化就可以直接调用。
参考技术B 不需要初始化 因为它里面的方法都是静态方法 可以直接Array.方法名(); 参考技术C 这个类的构造方法是私有的,你没有办法初始化创建实例。
/**
* Constructor. Class Array is not instantiable.
*/
private Array()
不过这个类的所有方法都是静态的,所以你也不用实例去就可以调用这些方法的。

参考资料:api

参考技术D List<EObject> list= new ArrayList<Object>();
//尖括号内放你想放的数据类型

Java Array二维数组使用

二维数组:元素为一维数组的数组

复制代码
package myArray.arrayarray;
/*
*二维数组:元素为一维数组的数组
*
* 定义格式:
*           A:数组类型[][] 数组名; (推荐用法)
*           B:数组类型 数组名[][];
*           C:数组类型[] 数组名[];
* 初始化:
*           A:动态初始化
*               数据类型[][] 数组名 = new 数据类型[m][n];
*               m表示二维数组中一维数组的个数
*               n表示一维数组的个数
*            B:静态初始化
*               数据类型[][] 数组名 = new 数据类型[][]{[元素...],[元素...],[元素...]....};
*               简化格式:
*               数据类型[][] 数组名 = {[元素...],[元素...],[元素...]....};
*               其中{}个数表示一维元素m个,"元素..."为一个一维元素中有n个元素
*
* 二维数组名配合索引可以获取到每一个一维数组。
*每一个一维数组配合索引名可以获取到数组中的元素。
*
*假如我有一个二维数组:arr。
*我要从中获取一维数组:arr[索引]
*我要从中获取二维数组的元素:arr[索引][索引]
*/
public class ArrayArray {
    public static void main(String[] args) {
        int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
        //打印第二维数组的地址值
        System.out.println(arr);
        //打印二维数组的元素(一维数组(地址值))
        System.out.println(arr[0]);
        //打印二维数据中一维数组的元素
        System.out.println(arr[0][0]);
        System.out.println("-----------");

        //循环打印二维数组中的所有元素
        for(int x = 0;x<arr.length;x++) {
            for(int y = 0;y<arr[x].length;y++) {
                System.out.println(arr[x][y]);
            }
            System.out.println();
        }
    }
}
复制代码

 

打印结果如下

以上是关于java中array如何初始化的主要内容,如果未能解决你的问题,请参考以下文章

Java中数组的存储原理

Java中使用Arrays.asList初始化ArrayList

如何在 Java 中声明和初始化数组?

如何在Java中初始化数组中的所有整数?

从 Array(Java) 中删除空元素

Java Array二维数组使用