【java基础】三元运算符&语句结构

三元运算符格式

(条件表达式)?表达式1:表达式2

如果条件为True,运算后得结果为表达式1

如果条件为False,运算后得结果为表达式2

示例:

获取两个数中的大数

int x =3,y=4,z;

z=(x>y)?x:y   //z变量存储的是两个数的大数。

表达式就是具有一定语法规则的语句

语句:

1)循环结构

代表语句:while、do while、 for

while语句格式

while(条件表达式)

{

   执行语句;

}

do while 语句格式:

do

{

  执行语句;

}while(条件表达式);

while:先判断条件,只有条件满足才执行循环体

do while:先执行循环体,再判断条件,条件满足再继续执行循环体

do while 特点是条件无论是否满足,循环体至少被执行一次

2)判断结构

      if语句三种格式

1.                                         3. 

if(条件表达式)       if (条件表达式)

{                                 {

  执行语句;                  执行语句;

}                                  }

                                  else if (条件表达式)

2.                               {

if(条件表达式)          执行语句;

{                                  }

  执行语句;       else

}                                 {

else                               执行语句;

{                                  }

   执行语句;

}

选择结构

switch(表达式)

{

  case 取值1:

    执行语句;

    break;

        case 取值2:

    执行语句;

    break;

  ...

  default:

    执行语句;

    break;

}

示例:

int x = 3;
switch(x)
{
    case 3:
    case 4:
    case 5:
    System.out.println(x+"春季");
    break;
    
    case 6:
    case 7:
    case 8:
    System.out.println(x+"夏季");
    break;
    
    case 9:
    case 10:
    case 11:
    System.out.println(x+"秋季");
    break;
    
    case 9:
    case 10:
    case 11:
    System.out.println(x+"冬季");
    break;
    
      
}

if和switch语句很像
具体什么场景下,应用哪个语句呢?
如果判断具体数值不多,而且符合byte short char 这4种类型
虽然两个语句都可以使用,建议使用switch,因为效率稍高
其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广

switch 语句特点:
1)switch语句选择的类型只有4种:byte,char,int,short
2)case之间与default没有顺序。先执行第一个case,没有匹配的case执行default
3)结束switch语句的两种情况:遇到break,执行到switch语句结束
4)如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,知道遇到break或者switch结尾结束



常常感恩
原文地址:https://www.cnblogs.com/prince365/p/14042121.html