JAVA语言的BUG?
来源:互联网 发布:mac mysql可视化界面 编辑:程序博客网 时间:2024/05/21 08:55
有个同学跟我说,他有个重大发现:
package org.leno.execise1;
public class Answer {
public static void main(String[] args) {
int i=5;
System.out.println("value is "+((i>5)?9.0:9));
}
}
呵呵。咋一看确实有点怪异,莫非5>5成立?事实当然不是这样的。我们又被一些光怪陆离的表象迷惑了。请看真相:
public static void main(String[] args) {
int i=5;
System.out.println(i>5?1.0:2);
}
结果是2.0,明白了吧。其实输出的还是后者,只是在三目运算符的表达式中,有一个double类型的数(1.0)参与了运算。所以根据JAVA中类型提升的原则。整个结果最终就变成double类型了。所以输出的结果才是2.0.依此类推,上面的输出9.0就很好理解了。呵呵,现在你明白了吧。
- JAVA语言的BUG?
- java语言的Bug
- C语言我的bug!
- C++语言的重大bug
- java Static的bug
- Java的一个BUG。
- C语言中史上最愚蠢的Bug
- C语言中史上最愚蠢的Bug
- C语言中史上最愚蠢的Bug(zz)
- C语言中史上最愚蠢的Bug
- C语言中易犯的BUG收集
- Android 2.2 更改语言时的Bug
- C语言中史上最愚蠢的Bug
- C语言中史上最愚蠢的Bug
- C语言中史上最愚蠢的Bug
- C语言中史上最愚蠢的Bug
- R语言遇到bug的处理方法
- C语言中史上最愚蠢的Bug
- GTK+图形化应用程序开发学习笔记(十二)—对话框构件、标尺构件
- 高性能网页开发新20条规则详解
- 最简单的判断自己体质方法
- 介绍两本spring好书
- c#使用Matrix执行缩放
- JAVA语言的BUG?
- Inside Sqlite翻译结果
- Symbian 多线程使用详解
- 态度决定一切
- 创建守护进程步骤
- 对CWnd类的模拟
- reactos操作系统实现(11)
- [VB.NET源码]会议记录系统sql2000三层开发
- 通宵