java?: 三目运算符

    技术2024-11-10  26

     

     

     

     public static void main(String[] args) {  

        int a=0;

      boolean f=false;  f?a=1:a=4;  System.out.println(a); 

     

    }

     

    编译时  错误提示:

     

     Syntax error on token ";", assert expected after this token Type mismatch: cannot convert from Object&Comparable<?>&Serializable to boolean Syntax error on token "=", != expected

     

    分析:

     

     

      三目运算符 形式为:

     

      结果变量=表达式?值1:值2;

     

      其中  1)表达式 为逻辑表达式 判断其为真或假

     

              2)值1 与 值2 为 可能的值 不能为表达式,也即 值1,值2 不能为 a=1这样的表达式

              3)三目运算符进行运算后 返回的是一个值 必须用变量进行保存或print(?:)直接打印 或return返回结果值

              

     

     注: 表达式

     

            

       表达式是由变量、操作符或是方法调用所组成的一个运算序列,并且返回一个值。    而salary=100是表达式

     

     

     

    正确的程序为:

     

     public static void main(String[] args) {  

        int a=0;

      boolean f=false;  a=f?1:4;  System.out.println(a); 

     

    }

    最新回复(0)