`

JAVA解惑之—条件操作符

阅读更多

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_

    《Java解惑(中文版)》是一本专为Java初学者设计的学习资料,旨在帮助读者解答在学习Java过程中遇到的各种困惑。"solve65p"可能代表这本书包含65个问题或主题,每个都深入浅出地进行了讲解,旨在解决初学者在编程...

    java解惑 PDF版

    文档《java解惑 PDF版》中列举了95个这样的谜题,每个谜题都旨在帮助开发者理解并纠正一些常见的错误理解。以下是根据提供的部分内容解析的几个相关知识点。 ### 表达式谜题与取余操作符(%)的行为 在Java中,...

    JAVA解惑(JAVA谜题) 中文版(PDF)

    ### JAVA解惑中的关键知识点解析 #### 谜题1:奇数性的判断 在《JAVA解惑》一书中,作者通过一系列实例介绍了Java编程语言中的一些不易掌握的知识点。其中一个例子是关于如何正确判断一个整数是否为奇数。 **原始...

    java解惑java解惑java解惑

    "Java解惑"这个主题,显然旨在帮助开发者解决他们在学习和实践中遇到的问题。在Java的世界里,疑惑可能涵盖语法、类库、框架、并发、内存管理等多个方面。下面,我们将深入探讨一些常见的Java解惑知识点。 1. **...

    Java解惑(中文+书签).pdf

    在Java中,取余操作符(%)用于计算两个整数相除的余数。例如,`i % 2` 将会返回整数`i`除以2后得到的余数。但在处理负整数时,该操作符的返回值会保留与左侧操作数相同的符号。这意味着,对于负奇数,`i % 2`的结果...

    java疑难解惑(提高篇)

    Java编程语言中的“疑难解惑”常常涉及到对语言特性的深入理解,特别是在处理特定问题时。本篇文章将探讨两个常见的Java谜题,涉及取余运算符 `%` 和浮点数精度问题。 首先,我们来看“表达式谜题”。在Java中,`...

    JAVA解惑 中文pdf版

    ### JAVA解惑知识点详解 #### 一、表达式谜题:奇数性的判断 **谜题背景**: 在《JAVA解惑》这本书中提到了第一个谜题:如何判断一个整数是否为奇数。该谜题提供了一个看似合理的解决方案,但实际运行时会出现问题...

    JAVA解惑 大量java实例 Java程序员阅读

    = 0`作为判断条件,或者使用位操作符`&`来实现奇偶判断,即`return (i & 1) != 0;`。 #### 浮点数精度问题 在Java中处理浮点数时,特别是涉及小数的运算,会遇到精度问题。在上述示例中,尝试计算找零金额时,使用...

    java解惑,解释java上百个谜题

    Java编程语言中,正确理解和使用各种操作符是至关重要的,...在实际开发中,应始终测试边界条件,确保代码在各种输入情况下都能正确工作,同时熟悉并合理使用Java提供的数据类型和操作符,以避免潜在的错误和不准确性。

    经典 java 解 惑

    Java中取余操作符`%`的行为在负数情况下与预期有所不同。具体来说,对于任意整数`a`和非零整数`b`,Java保证以下恒等式成立: ``` (a / b) * b + (a % b) == a ``` 这意味着取余操作的结果总是与左侧的操作数保持...

    java 解惑.doc

    Java语言中的取余操作符 `%` 在处理负数时的行为可能会引起误解。在谜题1中,`isOdd` 方法原本设计用来检测一个整数是否为奇数,但因为Java的取余操作符 `%` 的特性,它在负数上无法正确工作。当 `i` 是负奇数时,`i...

    JAVA 解惑(解析JAVA开发中的95个疑惑点)

    **描述**: 本节通过一个示例解释了Java中取余操作符(`%`)在处理负数时的行为特点。 **详细解释**: 在Java中,取余操作符 `%` 用于获取两个数相除后的余数。例如,`i % 2` 返回 `i` 除以 `2` 的余数。对于正数来...

Global site tag (gtag.js) - Google Analytics