黑马程序员_毕向东_Java基础视频教程——三元运算符(随笔)

三元运算符:三个元素参与运算的符号

【三元运算符:简略版的 if(){} else() {}语句】

class Text
{
    public static void main(String[] args)
    {
        int num = 60;
        int n1 = num & 15;
        
        System.out.println((char) (n1 - 10 + 'A'));
        
        //要获取下一组四位,将 60 右移 4 位
        int temp = 60 >> 4; 
        
        //对temp的值进行最低4位的获取
        int n2 = temp & 15;
        System.out.println( n2 );
        /*
             0 — 9 'A' 'B' 'C' 'D' 'E' 'F'        
                    65  66  67
                    10  11  12  13  14  15
               12 - 10 = 2 + 'A' = (char)67;
        */
    }
}

三元运算符:就是具有一定语法规则的语句,三个元素参与运 算的符号,因为是运算符,所以一定会有结果

  1. 格式
    1. (条件表达式)?表达式1: 表达式2;
    2. 如果条件为 true ,运算后的结果是表达式1;
    3. 如果表达式为false,运算后的结果表达式2;
  2. 示例:
    1. 获取两个数中最大数。
    2. int x = 3, y = 4, z;
    3. z = (x > y) ? x: y; //z 变量存储的就i是两个数的大数。
 class Text
{
/* 
    public static void main(String[] args)
    {
        int num = 60;
        int n1 = num & 15;
        
        System.out.println(n1>9?(char)(n1 - 10 + 'A'):n1);
        
        //要获取下一组四位,将 60 右移 4 位
        int temp = 60 >> 4; 
        
        //对temp的值进行最低4位的获取
        int n2 = temp & 15;
        System.out.println(n2>9?(char)(n2 - 10 + 'A'):n2);
       
      //     0 — 9 'A' 'B' 'C' 'D' 'E' 'F'        
      //            65  66  67
      //            10  11  12  13  14  15
      //       12 - 10 = 2 + 'A' = (char)67;
      
      【注意】这部分代码里还没有定义变量,鉴于目前还没讲到函数那部分,等到时候学到了就可以定义功能,写个if语句
    }
*/
     public static void main(String[] args) 
     {
         int x = 3, y;
         
         y = (x>1)?100:200;  
         //若 x>1 ,判别式为true,则执行表达式1 —— y = 100,
         //若 判别式为falsr,则执行表达式2 —— y = 200;
         System.out.println("y=" + y);
         
         int z = 2;
         
         //若把 y = (x>1)?100:200; 改写成
         y = (z > 1)?'a':200;  //带字符型的
         //则 这个字符型会自动提升,因为它在和表达式2做运算
         //而表达式2会是一个整数
         
		 System.out.println("y = "+ y);
     }
}

    
posted @ 2020-05-17 22:23  kidrauhl  阅读(162)  评论(0)    收藏  举报