黑马程序员技术交流社区

标题: 关于数据类型强制转换问题.懂的进,不懂的也来学习一下. [打印本页]

作者: 走在冷风中    时间: 2015-7-13 22:44
标题: 关于数据类型强制转换问题.懂的进,不懂的也来学习一下.
public class Demo {
        public static void main(String[] args) {

                int i = (char)999999999;
               
                System.out.println("i = "+i);
               
        }
}
上面这段代码输出结果i = 51711.顿时好迷茫,求大神帮忙解释一下这是怎么来的,谢谢.
作者: _sunrain    时间: 2015-7-13 22:53
99999999转换成二进制再截取char的范围(两个字节,16位),再放入int中。
作者: 走在冷风中    时间: 2015-7-13 23:12
_sunrain 发表于 2015-7-13 22:53
99999999转换成二进制再截取char的范围(两个字节,16位),再放入int中。

谢谢,明白了




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