java中int[] a=new int[3];a={1,2,3};第二句为什么报错?

如题所述

你应该写成:
int[] a=new int[3];
a[0]=1;
a[1]=2;
a[2]=3;

数组的整体赋值,只能在声明的时候做。声明之后,就只能按每个成员这样赋值了。
如有帮助,请采纳。
温馨提示:内容为网友见解,仅供参考
第1个回答  2016-11-18
赋值方法如下:
①int[] a = new int[]{1,2,3};
②for (int i = 0; i < 3; i++)
a[i] = i+1;
③int[] a = {1,2,3};
④int[] a = new int[3];
a[0] = 1;
a[1] = 2;
a[2] = 3;
第2个回答  2016-11-18
第二句只有在初始化的时候用,比如int[]a={1,2,3}
第3个回答  2016-11-18
你第二个a不是数组了

java 语句int a[][]=new int[][3]哪里错了啊?帮我解释详细点哦,谢谢
你不能这样定义int a[][]=new int[][3]这样定义是错误的 可改为int a[][]=new int[3][]如果你一定要定义第二维可以这样定义 int a[][]=new int[3][];a[0]=int new int[3];a[1]=int new int[3];a[2]=int new int[3];...

...{ int a[] = new int[3]; a[0]=0; a[1]=1; a[2]=2; }为什么这样会报...
。。。\/\/这里只能定义实例变量,int a[]被认为是实例变量,a[0],a[1],a[2]不是实例变量,所以错误 } class Test{ { 。。。\/\/这里是初始化块,可以对实例变量进行初始化 } } 你也可以这样初始化int a[]class Test{ int a[]=new int[3]{0,1,2};} ...

int a [ ] = new int [5]; int [ ] a=new int [ ] {1,2,3,4,5}...
回答:2种写法在不同语言上都是对的,在c#里只能用第二种写法来定义数组。当然,你会问这个问题,猜想你用的应该是java。其实2个定义方式没什么区别,只不过第二个定义实例的时候同时给数组的每个元素都赋上了值。

java int [] a = new int[2]{1,3};
int[] a = new int[2]{1, 2, 3,};编译器应该将数组初始为什么呢?明显就有歧义了,为了避免这种有奇异的情况,Java的语法才这样规定。换句话说,只有在没有指定初始值的时候,才能给出初始大小,这两个信息只能给出一个,比如:int[] a = new int[2];就是合法的,默认初始值都是0 每种...

用java输入三个整数,求最大值和最小值,为什么用一个for循环中最小值求...
前面啊int [] a =new int[3];开辟空间,并给三个空间赋上初值0;第一步:max=0,min=0;\/\/a[0]的值吧?然后循环判断,if(0<1)\/\/显然是 赋值,if(0>1)\/\/显然也不是,跳过。第二轮2来了。if(1<2)\/\/是的把a[i]的值赋值给max,在判断(0>2)\/\/不是跳过 第三轮3来了。if(2<3)...

java中 inta a[ ]=new int[3]; a=null;是什么意思
我也是在学习中,说不对的地方希望别喷,也希望大牛帮忙纠正。数组初始化的时候是空的,所以a=null;我个人认为好像不会出现这个问题。int类型好像是默认为0.

int[][]arr=newint[3][4]为什么错?
如果是java,new int[3][4]是没有错误的。除非你new和int中间没有写空格 但是c#不可以这么写,对于这个情况来说是不定长数组,只能定义第一纬度的长度,也就是 new int[3][];否则会报错。如果想创建固定长度的二维数组,可以使用:int[,] arr = new int[3,4];

java一维数组和二维数组的区别
int[] a = new int[3];a[0] = 1;a[1] = 2;a[2] = 3;方法一要注意的是不能这样写:int[] a = new int[3];a = {1,2,3};原因是用new int[3]这种方式创建对象,对象已经被初始化并赋初值为0;可以用下面代码验证:int[] d = new int[3];for(int i=0;i<d.length;i+...

JAVA里的int[]a =new int[3],是指数组里指定义3个数么
1、int[] a=new int[length]; a[0]=1;2、int[] a={1,2,3};3、int[] a; a=new int[length];初始化时一定要指明数组长度,或像(2)间接指明长度。像你这种情况,若没有进一步赋值,将会创建3个可以存放int变量的内存空间,初始值都为0。a[0]=0; a[1]=0; a[2]=0;...

java中int [] arr = {1}和int [] arr = new int[]{1}区别
我亲自给你打在Eclipse里面测试了,报错:数组常量只能在初始化操作中使用。这就是你所想要的答案。也就是说,你没有初始化。

相似回答