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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© huangxuanheng 中级黑马   /  2014-9-9 18:54  /  1869 人查看  /  11 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

下面一段代码,大家认为打印出什么?_?
public class  A{
public static void main(String[]args){
System.out.println("H"+"a");
System.out.prinln('H'+'a');
}
}

11 个回复

倒序浏览
Ha  和  169

点评

给你罢马币吗?  发表于 2014-9-10 18:25
回复 使用道具 举报
不错,你能找出理由吗?怎么解析呢?
回复 使用道具 举报
huangxuanheng 发表于 2014-9-9 21:31
不错,你能找出理由吗?怎么解析呢?

第一个数Ha,因为是字符串,+是字符串的连接操作,第二组是一个整型的数字,因为H和a会找出对应的是ASCII码值,所以第二个输出一个数字.完了
回复 使用道具 举报
应该是Ha'H'的ASCII码值加上‘a’的ASCII码值
回复 使用道具 举报
wawsc5354524 发表于 2014-9-10 15:09
第一个数Ha,因为是字符串,+是字符串的连接操作,第二组是一个整型的数字,因为H和a会找出对应的是ASCII码值 ...

是的,字符串的+是把字符串连接起来,而字符中的+是把字符转换为int型进行两个数的相加操作,因为int类型的优先级比char类型高,所以进行的是加操作
回复 使用道具 举报
MR.Sun 发表于 2014-9-10 16:54
应该是Ha'H'的ASCII码值加上‘a’的ASCII码值

是 的..............
回复 使用道具 举报
学习了:victory:
谢谢楼主大大
回复 使用道具 举报
不错。谢谢
回复 使用道具 举报
应该是Ha和169,第一个双引号,表示字符串,直接相连,第二个是单引号,表示单个字符,先转换成ASCII码值,再把值进行相加。
回复 使用道具 举报
huanhuan 发表于 2014-9-11 08:47
应该是Ha和169,第一个双引号,表示字符串,直接相连,第二个是单引号,表示单个字符,先转换成ASCII码值, ...

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