码迷,mamicode.com
首页 > 其他好文 > 详细

字符之谜

时间:2015-04-14 08:31:33      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:java解惑

1、最后的笑声:

System.out.println(‘H‘ + "a");

System.out.println(‘H‘ + ‘a‘);

结果:Ha169

这里需要注意到的是“+”运算符

在java里,参与“+”运算的两个操作数会被先提升到int型,然后运算。因此先‘H‘+‘a‘相当于 (int)(‘H‘+‘a‘)。

类似的:

short x = 1;

short y = 1;

short z = x + y;

上述代码能编译通过吗?答案是不能,因为int不能隐示转换成short

提示,除了int加操作,其他的加操作要小心。

2、ABC

String letters = “ABC”;

char[] numbers = {‘1‘,‘2‘,‘3‘};

System.out.println(letters + " easy as " + numbers);

ABC easy as [@16f2345之类的串

当对象参与连接操作时,将调用它的toString,而数组的toString继承自Object,返回对象所属的类名,@符号,散列码。

提示:要想将char数组转换成一个字符串,就要调用String.valueOf(char[]);


字符之谜

标签:java解惑

原文地址:http://blog.csdn.net/havedream_one/article/details/45036929

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!