java三元表达式编程规范问题

package day01;

public class Program {

    
    public static void main(String[] args) {
        // TODO Auto-generated method stub
    char x='x';
      int i=10;
    System.out.println(false?i:x);
    System.out.println(false?10:x);
    /*第一个因为i是一个变量,因此,第一个输出x被提升为int型了,输出120
     * 第二个输出,java编程规范中提到,当后两个表达式有一个是常量表达式时,
     * 另外一个的类型是T,如果常亮表达式可以被T表示,输出结果是T类型。所以,
     * 因为10是常量,可以被char表示,输出结果是char型的。
     */
        
    }



}

原文地址:https://www.cnblogs.com/xurui1995/p/5587543.html