java数组初始化的方式_Java数组初始化,这三种方式有什么区别?

首先因为数组初始化要使用的时候必须确定数组的长度,也就是说数组的长度是不可变的。

在JAVA中创建数组有两种方式 :

(1)静态创建 如

Object[] arr1 = {"a","b","c"};

(2)动态创建 如

1

Object[] arr3 = new Object[]{"a","b","c"};

2

Object[] arr2 = new Object[3];

arr2[1] = "a";

arr2[2] = "b";

arr2[3] = "c";

//先确认元素个数,一般情况下习惯使用动态创建方式 比较灵活 可以先规定元素个数 后对每个元素进行赋值

3

Object[] arr4 = null;

arr4 = new Object[3];

arr4[1] = "a";

arr4[2] = "b";

arr4[3] = "c";

//直接给arr4初始化为null,然后要使用的时候再创建一个新的数组new Object[3],让arr4指向新数组的地址,然后再依次赋值

而题主说的那种方法:

Object[] params = null;

params = {1, 2, 3, 4};

错误一:你这是直接创建一个空数组params,也就是他就是空了,数组的长度不可改变,你这时候往里面加数据,一个空数组自然加不了任何东西,所以编译时就会出错。你应该跟我上面所说的第二种方法一样,重新创建一个长度为4的数组,把新数组的地址给params,也就是Object[] params = null; params = new Object[4];这样就可以创建。

错误二:数组的初始化只有在定义的时候可以连续添加,定义完

Object[] params = null;

params = new Object[4];

之后,你要向里面添加数据,就只能对着数组下标,一个一个添加。

params[1] = 1;

params[2] = 2;

params[23 = 3;

params[4] = 4;

而不能直接params = {1, 2, 3, 4};

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值