黑马程序员技术交流社区

标题: 关于Integer构造函数 [打印本页]

作者: 鲍跃超    时间: 2012-12-15 16:33
标题: 关于Integer构造函数
本帖最后由 鲍跃超 于 2012-12-15 16:34 编辑

看Integer文档的时候构造函数只能传Int和String两种类型的参数
Integer sInt = new Integer('S');
本来想传字符串S看看出什么错误,误操作输入了字符S。
但是编译通过,然后试着打印他的值,是ASCII码的83.
求解释?为什么接收字符的时候不报错误...


作者: Kevin123    时间: 2012-12-15 17:39
'S'表示的就是S的是ASCII码值83,你传入之后的值就是S的ASCII码值83,所以打印出来的就是整形值83。
作者: 黑马黄涛    时间: 2012-12-15 17:51
呵呵,确实打印的是ASII码值,但为什么可以传入呢?
原因很简单啦...
伙计,你还记得switch(key)吗?
key在1.6之前只能接收int类型,但为什么可以传入字符类型呢?哈哈...就是嘛 没有损失精度.,所以可以自动类型转换了..
char -->int 当然可以传递啦...
作者: 黑马黄涛    时间: 2012-12-15 17:52
黑马黄涛 发表于 2012-12-15 17:51
呵呵,确实打印的是ASII码值,但为什么可以传入呢?
原因很简单啦...
伙计,你还记得switch(key)吗?

这都是同一个道理...我觉得跟你举个例子更好理解吧...




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2