为了账号安全,请及时绑定邮箱和手机立即绑定

如何用Java初始化数组?

如何用Java初始化数组?

慕的地10843 2019-06-27 17:22:08
如何用Java初始化数组?我正在初始化如下所示的数组数据:public class Array {     int data[] = new int[10];      /** Creates a new instance of Array */     public Array() {         data[10] = {10,20,30,40,50,60,71,80,90,91};     }}NetBeans将错误指向行data[10] = {10,20,30,40,50,60,71,80,90,91};我怎样才能解决这个问题?
查看完整描述

3 回答

?
慕的地6264312

TA贡献1817条经验 获得超6个赞

试一试data = new int[] {10,20,30,40,50,60,71,80,90,91 };


查看完整回答
反对 回复 2019-06-27
?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

当您创建一个大小为10的数组时,它分配了10个槽,但从0到9。这个for循环可能会帮助您更好地看到这一点。

public class Array {
    int[] data = new int[10]; 
    /** Creates a new instance of an int Array */
    public Array() {
        for(int i = 0; i < data.length; i++) {
            data[i] = i*10;
        }
    }}


查看完整回答
反对 回复 2019-06-27
?
米琪卡哇伊

TA贡献1998条经验 获得超6个赞

data[10] = {10,20,30,40,50,60,71,80,90,91};

以上不正确(语法错误)。这意味着您要将数组分配给data[10]它只能容纳一个元素。

如果要初始化数组,请尝试使用阵列初始化器:

int[] data = {10,20,30,40,50,60,71,80,90,91};// orint[] data;data = new int[] {10,20,30,40,50,60,71,80,90,91};

注意这两个声明之间的区别。当将新数组赋值给声明的变量时,new一定要用。

即使您更正了语法,访问data[10]仍然不正确(您只能访问data[0]data[9]因为Java中的数组索引是基于0的)。存取data[10]抛出ArrayIndexOutOf界异常.


查看完整回答
反对 回复 2019-06-27
  • 3 回答
  • 0 关注
  • 488 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号