public class DosEquis{
public static void main(String[] args){
int i = 0;
System.out.println(true ? 'X' : 0);
System.out.println(true ? 'X' : i);
}
}
输出为什么是
X
88
public static void main(String[] args){
int i = 0;
System.out.println(true ? 'X' : 0);
System.out.println(true ? 'X' : i);
}
}
输出为什么是
X
88
解决方案 »
- 高分求一题解 急
- 以前都是做BS结构,现在做非BS结构的东西,单独写一个连接数据库的类,那么JDBC的JAR包应该放在什么地方呢
- 子类的getClone函数该如何写?
- 如何把cookie中的用户名直接放到用户名的文本框中
- 一道没有头绪的编程题
- 请问如何实现自定义事件?
- 请问用JEditorPane做的浏览器中如何能识别JavaScript
- 心情不错,升五个三角,散分庆祝!
- 一个关于Jar文件的问题?
- 【十万火急】:不知那位大侠有讲解javascript在netscape下的应用?
- java中如何在E:\\下写一个123.txt文件?
- 请教myeclipse运行没问题,jar包导出不能运行的问题
表达式0 ? 表达式1 : 表达式2
表示, 如果表达式0返回的boolean值是true, 则执行表达式1,否则执行表达式2
表达式理解为char型。
true ? 'X' : i
这里有个int类型,表达式的类型为int型。根据表达式的类型调用println的相应的重载版本。关键:如何判断?:表达式的类型,参考语言规范。
第二个 sysout char 与 int 输出了 char 的 code
0不也是int吗?
只是没有显示的声明
就不认为他是int吗?
我试了一个char不能表示的数字999999,果然输出88了~