一道简单的面试题

-江南听雨- 2016-03-27 05:18:02
加精
用两行代码声明变量x和i,使
x = x + i;
合法,而
x += i;
不合法;
备注:JDK版本为7;

以前看《Java解惑》中有种方式是String和Object的,不过jdk7把这个问题给解决了,不知还有其他的解法么?
...全文
6545 38 打赏 收藏 转发到动态 举报
写回复
用AI写文章
38 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_37510447 2017-09-16
  • 打赏
  • 举报
回复
+=存在类型转换
m0_37737555 2017-07-21
  • 打赏
  • 举报
回复
这个你用java基本数据类型的转换就能做,主要是byte、short、char和int的自动转换机制就可以,代码有多种形式:
例1:

czh7726 2016-11-24
  • 打赏
  • 举报
回复
x+=i; 这种运算会加一个隐藏的强制转换:强制转换成x的基本类型; 所以如果x+i超过了x的范围会报错。
qq_35925496 2016-08-21
  • 打赏
  • 举报
回复
隐式转换成运算中最高等级的数据类型,如果结果要付给低等级数据类型,就要强转。
大白是小白 2016-08-19
  • 打赏
  • 举报
回复
我理解楼主的意思,知道你并没有问反,但是我开始想的也是反过来那种.敢问楼主有答案吗?
zhou-AAAAA 2016-06-02
  • 打赏
  • 举报
回复
JDK7常量池在堆中,newObject的对象也在堆中,所以不报错
chaser401 2016-04-28
  • 打赏
  • 举报
回复
答案到底是什么
qq_34670368 2016-04-15
  • 打赏
  • 举报
回复
我才刚入门,不怎么懂。。
qq_26064283 2016-04-05
  • 打赏
  • 举报
回复
谁能给出答案啊←_←
qq_33581522 2016-04-03
  • 打赏
  • 举报
回复
这个不是自动封箱吗
CodingDjz 2016-04-01
  • 打赏
  • 举报
回复
	
public void fun(){
		int i = 123456;
		short s = 0;
		s += i;
		s = s + i ;//编译不通过
我自己写下面的编译不通。 我认为是普通赋值没有强转,用复合赋值是自动强转。
一剑侵心 2016-04-01
  • 打赏
  • 举报
回复
同意21楼,这种问题有什么实际意义?
-江南听雨- 2016-04-01
  • 打赏
  • 举报
回复
没人给出答案
-江南听雨- 2016-04-01
  • 打赏
  • 举报
回复
引用 25 楼 ni_h_ 的回复:
我刚试了一下,+=这种运算符需要指定相应的数据类型。objec是Java的所有类的父类。 所以它并不能识别。 String x = new String(); char i = 'a'; x += i; x = x + i; 这样就没有问题
在jdk7下可以运行。所以你这样不符合要求。
cool_1992 2016-04-01
  • 打赏
  • 举报
回复
引用 6 楼 u012736409 的回复:
[quote=引用 5 楼 qq_21413973 的回复:] /
JDK7下可以正常编译,运行。 这种方式不行。[/quote] 我用的jdk1.6这个方法可以,楼主用jdk7这种方法不行吗
kiyoki 2016-04-01
  • 打赏
  • 举报
回复
我比较好奇面试什么职位要问这种问题,求分享
苏臣 2016-04-01
  • 打赏
  • 举报
回复
我刚试了一下,+=这种运算符需要指定相应的数据类型。objec是Java的所有类的父类。 所以它并不能识别。 String x = new String(); char i = 'a'; x += i; x = x + i; 这样就没有问题
qq_34507457 2016-04-01
  • 打赏
  • 举报
回复
楼主厉害!
-江南听雨- 2016-03-31
  • 打赏
  • 举报
回复
以上答案说和没说一样啊,问题肯定没问反的。 是你们理解反了。 难道这道题还没答案么。
-江南听雨- 2016-03-31
  • 打赏
  • 举报
回复
引用 17 楼 sh12wen 的回复:
这问题肯定问反了,自己写出来的代码跟问题是反的。
没有问反,那个short和int的大家都知道。这个问的就是反过来的。
加载更多回复(18)

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧