java数组的基本知识

数组的声明格式
数据类型[] 数组名 或者 数据类型 数组名[]
数据类型可以为基本数据类型和引用数据类型

public static void method1(){
		int[] a;
		int b[];
		double[] d;
		Object[] e;
 		
	}

数组必须初始化才能使用

数组一旦初始化,长度不可变。长度确定下来了!!!

public static void method2(){
		//动态初始化:初始时只指定数组长度,由系统为数组分配初始值
		int[] a=new int[5];
		System.out.println(a);//[I@15db9742
		//数组的长度----》数组中元素的个数---》使用length属性可以得到数组长度
		int length=a.length;
		System.out.println(length);
		//如何获取数组中元素的值---》数组名[下标]
//		--》下标的取值范围0~数组长度-1
		int b=a[0];
		System.out.println(b);
		int c=a[4];
		//动态初始化,只指定长度,系统分配初始值0;
		System.out.println(c);
		 a[1]=5;
	}

其中a打印出[I@15db9742,为栈中的地址,像c++中的指针,a[],中的a指向堆(内存)中的一块区域,这个区域中存放数组的值。
下面例子解释。

public static void method3() {
		int[] a = new int[5];
		int[] b = new int[5];
		System.out.println(a == b);// false,比较的是地址值是否一致
		// ==运算符可以比较基本数据类型也可以比较引用数据类型,(题外话)
		// 比较基本数据类型,比较数值是否一致,比较引用数据类型,比较地址值
		System.out.println(a[0] == b[1]);// true,因为未设置值,系统初始值为0
		b = a;
		System.out.println(a == b);// true

	}
public static void method4() {
		int[] a = new int[5];
		int[] b = new int[5];
		System.out.println(a[0]);// 0
		System.out.println(b[0]);// 0
		a[0] = 1;
		b = a;//地址值相等,都指向a指向的空间
		System.out.println(b[0]);// 1
		b[1] = 2;
		System.out.println(a[1]);// 2

	}
public static void method5() {
		int[] a = new int[5];
		int[] b = new int[5];// 先指向一个空间
		b = new int[10];// 改变,指向另一个空间,
		System.out.println(b[9]);// 不会报错

	}

//静态初始化

public static void method6() {
		// 静态初始化: 初始化时指定每个数组元素的初始值,由系统决定数组长度
		int[] a = new int[] { 1, 2, 3, 4, 5 };
		// 简写
		int[] b = { 1, 2, 3 };

	}

这个是引用数据类型默认值,其他可以自己试试

public static void method7() {
		Date[] a = new Date[5];
		// 引用数据类型默认值为null
		System.out.println(a[0].toString());// 空指针异常,null去调用方法
		// a[0]为null;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值