问题描述
- 一道基础的算法,答案是什么?
-
看开始看算法(第四版)第一张的一道练习
给出以下表达式的类型和值d. 1+2+’3‘****
这个我觉得java是会自动转化为字符型吗?
我就自己println试验了一下。
System.out.println(1+2+'3');
结果为54,不懂了,求教。但是我看了网上的答案是33?一样不懂
我已经知道了,题目中是我错误
原题是双引号,字符型 1+2+“3”
我看成1+2+’3‘了。不过倒是加深了理解,谢谢各位
解决方案
带单引号的3是字符型,ascii码值查表可知为51,前面的1和2会自动加法运算,最后结果就是54了,不知道能不能帮到你
解决方案二:
因为‘3’有单引号 系统认为它是个字符 计算的时候会转成unicode码再计算 3的unicode码是51 加上前面的 就等于54了
解决方案三:
那个****是网站的格式问题,见谅 ,题目就是1+2+'3'
解决方案四:
char 型存放字符,实际上存放的就是字符对应的 ASCII码数值。而3对应的ASCLL码是51.所以结果是54.
时间: 2024-10-22 23:02:46