public class DosEquis{
public static void main(String [ ] args){
int i =0;
char x='X';
System.out.println( true ? x : 0 ); // (1)
System.out.println(false? i : x); // (2)
}
}
上面的程序的结果是:X88;不是我想的XX;我菜。。5555555555555555。
对于条件操作符JAVA中有一定的操作规则:
1) 如果第二个和第三个操作数的类型一样的话,那么它就是条件表达式的类型。
2) 如果第二个操作数的类型是T,T可以是byte ,short ,char.而另一个操作数的类型是Int类型的常量(常量哈哈),那么条件表达式的结果还是T;
3) 其他情况下,表达式的类型就是两个操作数类型的提升。
对于上面的程序,(1)调用的其实是PrintStream.println(char ).
(2)调用的其实是PrintStream.println(int );所以打印出了数值。。哈哈
又学到了一小点点知识。。顺便写一下子哈哈o(∩_∩)o...哈哈
分享到:
相关推荐
《Java解惑(中文版)》是一本专为Java初学者设计的学习资料,旨在帮助读者解答在学习Java过程中遇到的各种困惑。"solve65p"可能代表这本书包含65个问题或主题,每个都深入浅出地进行了讲解,旨在解决初学者在编程...
文档《java解惑 PDF版》中列举了95个这样的谜题,每个谜题都旨在帮助开发者理解并纠正一些常见的错误理解。以下是根据提供的部分内容解析的几个相关知识点。 ### 表达式谜题与取余操作符(%)的行为 在Java中,...
### JAVA解惑中的关键知识点解析 #### 谜题1:奇数性的判断 在《JAVA解惑》一书中,作者通过一系列实例介绍了Java编程语言中的一些不易掌握的知识点。其中一个例子是关于如何正确判断一个整数是否为奇数。 **原始...
"Java解惑"这个主题,显然旨在帮助开发者解决他们在学习和实践中遇到的问题。在Java的世界里,疑惑可能涵盖语法、类库、框架、并发、内存管理等多个方面。下面,我们将深入探讨一些常见的Java解惑知识点。 1. **...
在Java中,取余操作符(%)用于计算两个整数相除的余数。例如,`i % 2` 将会返回整数`i`除以2后得到的余数。但在处理负整数时,该操作符的返回值会保留与左侧操作数相同的符号。这意味着,对于负奇数,`i % 2`的结果...
Java编程语言中的“疑难解惑”常常涉及到对语言特性的深入理解,特别是在处理特定问题时。本篇文章将探讨两个常见的Java谜题,涉及取余运算符 `%` 和浮点数精度问题。 首先,我们来看“表达式谜题”。在Java中,`...
### JAVA解惑知识点详解 #### 一、表达式谜题:奇数性的判断 **谜题背景**: 在《JAVA解惑》这本书中提到了第一个谜题:如何判断一个整数是否为奇数。该谜题提供了一个看似合理的解决方案,但实际运行时会出现问题...
= 0`作为判断条件,或者使用位操作符`&`来实现奇偶判断,即`return (i & 1) != 0;`。 #### 浮点数精度问题 在Java中处理浮点数时,特别是涉及小数的运算,会遇到精度问题。在上述示例中,尝试计算找零金额时,使用...
Java语言中的取余操作符 `%` 在处理负数时的行为可能会引起误解。在谜题1中,`isOdd` 方法原本设计用来检测一个整数是否为奇数,但因为Java的取余操作符 `%` 的特性,它在负数上无法正确工作。当 `i` 是负奇数时,`i...
**描述**: 本节通过一个示例解释了Java中取余操作符(`%`)在处理负数时的行为特点。 **详细解释**: 在Java中,取余操作符 `%` 用于获取两个数相除后的余数。例如,`i % 2` 返回 `i` 除以 `2` 的余数。对于正数来...