A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李哲 中级黑马   /  2012-2-22 16:47  /  2032 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 李哲 于 2012-2-22 18:57 编辑

我尝试,没有出错。但是教程中,老师好像,没用过这种方式。
而且我尝试int a=b=1;却是非法的。

评分

参与人数 2技术分 +1 黑马币 +1 收起 理由
admin + 1
丁晓宇 + 1 可以是可以的,这么写不太专业~.

查看全部评分

8 个回复

倒序浏览
本帖最后由 马胜平 于 2012-2-22 16:59 编辑

java是强类型语言,你这样写b根本就没有定义,当然会报错,int x,m 是int x; int m;两个语句的简写

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
你的题面是合法的!int a=1,b=1.但是int a=b=1.就是违法的了

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
int a,b这样是定义两个对象a,b
而a=b=1;这样错误的
回复 使用道具 举报
int b,a=b=1;
这样可以,int a=b=1; 不行,是因为b 未被定义。
回复 使用道具 举报
本帖最后由 H07000223 于 2012-2-22 19:17 编辑

int x=1,m=1;合法吗?这样合法的啊~~~
至于为什么没人用这是因为这种写法眼神不好的一不小心就看漏了,而且写全又不是很麻烦。而写全了利于代码维护和代码检查。何乐而不为~~~

int a=b=1;却是非法的。这不非法没天理了。都没声明b这个变量,你叫人家都哪找去~~~Java中不声明是不能用的

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
int x=1,m=1;是没问题的!不会混淆的情况下可以这么写!
而int a=b=1;如果这句之前没有int b;这句定义,系统会报错“b未定义”!而如果这句之前有int b;则不会报错。如此,相当于在定义a的同时给a,b赋值!
回复 使用道具 举报
如果这句之前没有int b;这句定义,系统会报错“b未定义”!而如果这句之前有int b;则不会报错。如此,相当于在定义a的同时给a,b赋值!
回复 使用道具 举报
石德志 黑马帝 2012-2-23 10:30:23
9#
int x=1,m=1;很合法,你再写上几个也合法int a=7,b=7,c=7,d=7........只要是同一类型的就行,
至于int a=b=1,报错是因为java编译器编译时是从左向右编译的当读到a=b时找不到b这个变量,还未声明。。。。。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马