条件语句 if

if (condition) {statement;} else if {statemnt;} else if {statement;} ... else {statement;}

1、这里的{}可加可不加,内容多的时候最好加一下,让代码更清晰。

2、else if、else与其他编程语言一样不是必须要的,可省略。

 

3、碰到某些情况需要跳出并结束循环,可以用break;

 

4、碰到某些情况需要跳出本次循环但仍需继续后续循环,可以用continue;

 

if(yourSales >= 2*target)
{
  performance = "Excellent";
  bonus = 1000;  
}
else if (yourSales >= 1.5*target)
{
  performance = "Fine";
  bonus = 500;
}
else if (yourSales >= taget)
{
  performance = "Satisfactory";
  bonus = 100;
}
else
{
  System.out.println("You're fired.")
}

 

while循环

  • while (condition) {statement;}               ——如果condition始终为ture,则一直执行statement,直至condition为false
  • do {statement;} while (condition)          ——无论condition是否为true,都会先执行一次statement,后续是否执行看condition的值

1、同上,这里的{}可加可不加,为了代码更清晰,最好加上。

2、碰到某些情况需要跳出并结束循环,可以用break;

3、碰到某些情况需要跳出本次循环但仍需继续后续循环,可以用continue;


 

 

for循环

for (计数器初始化;计数器检测;计数器更新)

   statement;

 

for (int i=1;i<=10;i++)
{
  ...
}

for (int i=10;i>=5;i--)
{
  ...
}

 


 

for each循环

这个需要先了解数组的概念。

 


 

 

switch语句

什么叫直通?

我看的是中文翻译版的书,书里把case后面带冒号的形式叫做直通,英文是fall-through,我感觉非常晦涩难懂。查了以后的意思是什么呢?我们知道switch有多个case分支,传统的java写法是case后面加冒号,这种形式有个特点是,如果不在当前分支最后加break;,在分支执行完后不会结束,而是会继续执行下面的分支,直至执行完switch语句或者碰到一个break;才结束。所以命名为直通,像后面出的case->这种形式是不需要加上break;来跳出执行的。直通的话也是有它的应用场景在的,比如我想减少代码重复,不想重复写,那么就可以用case:的方式,把需要的代码都放到switch语句里面。

 

 

有直通行为 无直通行为

 switch (choice)

{

  case 标签名:

    statement;

              break;

       case 标签名:

              statement;

              break;

        ...

       default:

             statement;

             break;

}

 switch (choice)

{

  case 标签名 ->

    statement;

       case 标签名 ->

              statement;

        ...

       default ->

             statement;

}

1、每个case以冒号结束

2、执行case分支时如果没有写break;,那么会继续执行后面的分支,直至switch语句执行完毕或遇到一个break;

1、每个case以->结束

2、执行case分支时,无需加上break;,执行完当前分支就会自动结束switch语句

1、case标签可以是:

     ①类型为char、byte、short、int的常量表达式

     ②枚举常量

     ③字符串字面量

     ④多个字符串,用逗号分隔

2、switch语句如果没有找到匹配的case标签,则执行default语句

int num = 2;
switch (num) {
    case 1:
        System.out.println("是一"); 
        break;
    case 2:
        System.out.println("是二");
        break;
    default:
        System.out.println("其他数字");
}

 

SWITCH表达式

switch语句和表达式的区别

switch语句只是执行case下的一些语句,switch表达式需要分支有返回值,因为要用于赋值或者其他。

yield关键字和break关键字的区别

两者均能终止执行,区别在于yield会生成一个值,break不会。

public class TestClass {
    public static void main(String[] args) {
        String seasonName = "Summer";
        int numLetters = switch(seasonName)
                {
                    case "Spring" ->
                    {
                        System.out.println("spring time!");
                        yield 1;
                    }
                    case "Summer" ->
                    {
                        System.out.println("summer time!");
                        yield 2;
                    }
                    case "Fall","Winter" -> 3;
                    default -> -1;
                };
        System.out.printf("\nnumLetters = %d",numLetters);
    }
}

image


 

posted on 2026-06-03 13:56  12345zjl  阅读(4)  评论(0)    收藏  举报