您的位置:首页 > 编程语言 > Java开发

Java数组

2015-05-29 15:12 351 查看
参考:
http://www.w3cschool.cc/java/java-array.html http://www.blogjava.net/flysky19/articles/92763.html
一,基础

数组对于每一门编辑应语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。

Java语言中提供的数组是用来存储固定大小的同类型元素。

1,变量声明

double[] myList;         // 首选的方法

或

double myList[];         //  效果相同,但不是首选方法

2,创建数组

Java语言使用new操作符来创建数组,语法如下:
arrayRefVar = new dataType[arraySize];


上面的语法语句做了两件事:

一、使用dataType[arraySize]创建了一个数组。
二、把新创建的数组的引用赋值给变量 arrayRefVar。

数组变量的声明,和创建数组可以用一条语句完成,如下所示:
dataType[] arrayRefVar = new dataType[arraySize];


另外,你还可以使用如下的方式创建数组。
dataType[] arrayRefVar = {value0, value1, ..., valuek};


或者

int[] arr = new int[]{1,3,5};


数组的元素是通过索引访问的。数组索引从0开始,所以索引值从0到arrayRefVar.length-1。

3,数组处理

下面的语句首先声明了一个数组变量myList,接着创建了一个包含10个double类型元素的数组,并且把它的引用赋值给myList变量。
double[] myList = new double[10];


下面的图片描绘了数组myList。这里myList数组里有10个double元素,它的下标从0到9。



通过下标访问数组,通过for循环,加强for循环遍历数组,数组也可以作为方法的参数,和返回值。
4,Arrays

java.util.Arrays类能方便地操作数组,它提供的所有方法都是静态的。具有以下功能:

给数组赋值:通过fill方法。
对数组排序:通过sort方法,按升序。
比较数组:通过equals方法比较数组中元素值是否相等。
查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作。

二,高级
java中数组是对象,

MyClass.class.getClass.getSuperClass() 是Object.class

java数组没有对应的类文件

System.out.println(new Object[3].getClass().getDeclaredConstructors().length)
#数组没有构造方法

System.out.println(new Test[1].getClass()) 输出:class [Lcom.nqy.mycode.reflection.Test。java中普通类的class对象toString输出的是全限定名+类名,而数组数组输出的是[L+全限定名+类名,二维数组则是[[L+全限定名+类名。

float[][] fs = new float[3][5];
        System.out.println(fs.length); //打印一维数组的长度,3
        System.out.println(fs[2].length); //打印二维数组的长度,5


int[] is = (int[]) Array.newInstance(int.class,3);  //创建一维数组
        double[][] ds = (double[][]) Array.newInstance(double.class,2,3); //创建二维数组
        System.out.println(Array.getLength(ds));    //输出二维数组第一唯的长度,2
        System.out.println(Array.getLength(Array.get(ds,1))); //输出二维数组第二唯的长度,3
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: