黑马程序员技术交流社区
标题:
请问int x[3] = {1, 2, 3}为什么是错的??
[打印本页]
作者:
LLL_LLL
时间:
2016-9-11 12:57
标题:
请问int x[3] = {1, 2, 3}为什么是错的??
哪位大神来解释下
作者:
无悔的人生
时间:
2016-9-11 13:16
本帖最后由 无悔的人生 于 2016-9-11 13:19 编辑
你这样是动态和静态同时声明了 你应该是int[] x={1,2,3} 或者int[] x=new int[3] 然后在给x[0] x[1] x[2]赋值
作者:
chkanon
时间:
2016-9-11 13:20
java不允许,如果你长度传4的情况下,jvm怎么办;后面三个元素已经限定了数组长度,前面再传3就多此一举了
作者:
琼华掌教
时间:
2016-9-11 14:22
动静态只能用一,这是结合啊不允许
作者:
奋斗41280
时间:
2016-9-11 14:31
动静不能结合使用.这是规则.
作者:
小胖妞
时间:
2016-9-11 15:07
动静态结合
作者:
tliangl928
时间:
2016-9-11 15:14
java不容许这样,所以会报错……
作者:
青火
时间:
2016-9-11 15:33
int[] x = {1,2,3};
这样就不会错了
作者:
gjf821687
时间:
2016-9-11 15:49
int[] x = {1,2,3}; 这样才是对的
作者:
18333601807
时间:
2016-9-11 15:54
方便的话,粘出来源码看看啊
作者:
syso信任
时间:
2016-9-11 19:40
int x[3] 加了一个3,已经不是代表类型了
作者:
liyong2267576
时间:
2016-9-11 19:56
前面不能用三
作者:
32282722
时间:
2016-9-11 20:06
本帖最后由 32282722 于 2016-9-11 20:08 编辑
首先前边定义错了,数组定义int[] x 或者int x[] []里不能有数据
作者:
383412263
时间:
2016-9-11 20:36
我当时看的时候也这么干了,当时还郁闷为啥这样就不对,后来只能当规则记了。动静态只能用一!
作者:
NewsmallWhite
时间:
2016-9-11 20:55
数组的初始化方式,分为静态初始化,和动态初始化。你使用就是静态的初始化,静态初始化,只需要在花括号里面写上数组的元素即可,不需要再给数组规定大小,系统会默认使用你在花括号里面的长度为数组的长度
作者:
SunCowbee
时间:
2016-9-13 01:58
数组长度是3,但是数组的下标只能是0-2
作者:
Array先生
时间:
2016-9-13 07:26
java虚拟机不允许这样对数组进行初始化
作者:
小菜白白白
时间:
2016-9-13 12:50
int x[3] = {1, 2, 3}, 虚拟机使根据[3] 或{1,2,3}就 可以确定长度了,但两个一起用,虚拟机不知道是用[3]还是{1,2,3}来确认长度,
作者:
loveimust
时间:
2016-9-13 13:01
数组初始化分静态和动态两种方法,楼主的是将两种混起来用,这种方式在java中是不允许的,只能用一种方法
int[] a = {0,1,2}; 这种初始化的数组三个元素值分别为a[0] = 0 ,a[1] =1 ,a[2] = 2 ,
另外一种
int[] a = new int[3]; 定义数组的长度为3,其中的3个元素默认值a[0] = 0 ,a[1] =0 ,a[2] = 0 ,
int类型的默认值是0, 看你选哪种方式了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2