数组(java)

数组

1**.定义**:int[] a;
2.赋值
(1)int[] a={1,2,3,4,5};

(2)int[] a=new int[] {1,2,3,4,5};//静态初始化

(3)int[] a=new int[5];
(数组的值为默认值 (0的类型含义)
如果数组中的元素没有初始化,那么元素的值就是元素类型的默认值。)
//动态初始化

(4) Int[] a=null; // 只定义了一个数组类型的引用变量,
//没有数组对象
//a没有任何指向对象

(5)当数组开辟空间之后,就可以采⽤如下⽅式进⾏操作:

  1. 数组的访问通过索引完成。即:“数组名称[索引]”,注意:数组索引从0开始,因此可以采⽤的索引范围就是0~索引-1;假设现在开辟了3个空间的数组,那么可以使⽤的索引是:0、
    1、2。如果访问超过索引访问,那么会产 ⽣"java.lang.ArrayIndexOutOfBoundsException"异常信息。
  2. 当数组采⽤动态初始化开辟空间之后,数组之中的每个元素都是该数据类型的默认值
  3. 数组本身是⼀个有序的集合操作,所以对于数组的内容操作往往采⽤循环的模式完成。(数
    组是⼀个有限的集合,采⽤for循环

(6)匿名数组
顾名思义,数组没有引用变量

3.引用类型:
找到数组的线索
这里类型就牵扯到变量
变量:
形参 栈区
局部变量 栈区
属性 堆区
静态属性 方法区
数组对象一定在堆区

注意:
(1)引用类型是个线索,用来找到堆中的真正数据
(2)引用的方法调用也是值传递,形参的改变不会影响实参
(3)特性:java中的垃圾回收(GC);
(4)垃圾:没有引用指向的对象(数组)

Arrays.copyOfRange
Arrays.toString

数组最大缺陷:长度固定,存在越界问题

操作:
(1)根据下标访问对应的元素 a[index]
如果访问的数组数组为空,会抛出NullPointerException异常
如果访问越界,会抛出ArrayIndexOutOfBoundsException异常

(2)获取数组长度 a.length

int[] a={1,2,3,4,5};
int[] b=a; //b也指向a指向的数组对象
b={5,6,7,8}; // b重新指向一个数组对象,不会影响a和a指向的对象
b[0]=100; //改变的是b指向的数组对象的内容,会影响的a指向的数组对象的内容

数组的遍历:

1.For(int element: a){
Element
}; //foreach
3.for(int i=0;i<a.lenght;i++)
{
System.out.println(a[i]);
}

Jdk支持的一些数组操作:

Import java.util.Arrays;
Java.long.System(包)

Arrays.fill(int[] a,int v);
Arrays.copyOf(int[] a,int newLenghth);
Arrays.copyOfRange(int[]a ,int from,int to);

多维数组
二维数组:
int[][] a={{1,2,3},{4,5},null};
Java中多维数组存的元素类型是引用,所以可以有阶梯状的数组。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值