0


【Java成王之路】第三篇:Java SE(程序逻辑控制)

一、顺序结构

程序的执行和代码的执行顺序有关,如果调整代码的书写顺序, 则执行顺序也发生变化

二、分支结构

基本语法形式1:

**if(布尔表达式){ **

//条件满足时执行代码 }

基本语法形式2

**if(布尔表达式){ **

**//条件满足时执行代码 **

**}else{ **

**//条件不满足时执行代码 **

**} **

基本语法形式3 多分支的情况

**if(布尔表达式){ **

//条件满足时执行代码

**}else if(布尔表达式){ **

**//条件满足时执行代码 **

**}else{ **

**//条件都不满足时执行代码 **

}

举例:代码如下

public static void main(String[] args) {
        int n = 10;
        //if里面只能是布尔表达式
        if(n % 2 == 0) {
            System.out.println("偶数");
        }else{
            System.out.println("奇数");
        }

    }
}

**读入字符串 **

**读入字符串,如果字符串存在空格的情况下,遇到空格结束 **

如果你要读取字符串和整数,要先读取字符串再读取整数

** 如果要简单使用输入函数,可以用。项目当中,慎重!!!!!!**

判断是不是闰年:

public class TestDemo {

  方法1: public static void main1(String[] args) {
        int year = 2000;
        if (year % 100 == 0) {
            if (year % 400 == 0) {
                System.out.println("是闰年");
            } else {
                System.out.println("不是闰年");
            }
        } else {
            if (year % 4 == 0) {
                System.out.println("是闰年");
            } else {
                System.out.println("不是闰年");
            }
        }
    }

  方法2:  public static void main(String[] args) {
        int year = 2000;
        if(year % 100!= 0 && year % 4== 0 ||year % 400 == 0){
            System.out.println("是闰年");
        }else{
            System.out.println("不是闰年");
        }

    }
}

悬垂 else 问题

2.2 switch 语句

**基本语法 **

**switch(整数|枚举|字符|字符串){ **

**case 内容1 : { **

**内容满足时执行语句; **

**[break;] **

**} **

**case 内容2 : { **

**内容满足时执行语句; **

**[break;] **

**} ... **

**default:{ 内容都不满足时执行语句; **

**[break;] **

**} **

}

举例:

    public static void main(String[] args) {
        //long double float boolean不是不能做switch语句里面的参数的
        int a = 10;
        switch (a){//小括号里面是一个表达式,必须是一个简单的表达式,不能像c语言一样,比如说a>=10 && a<=20
            case 1:
                System.out.println("1");
                break;
            case 2:
                System.out.println("2");
            default:
                System.out.println("参数不匹配");
                break;
        }
    }
}

**String类型可以作为Java中switch语句的参数 **

** 根据 switch 中值的不同, 会执行对应的 case 语句. 遇到 break 就会结束该 case 语句**

**如果 switch 中的值没有匹配的 case, 就会执行 default 中的语句. **

我们建议一个 switch 语句最好都要带上 default

我们发现, 不写 break 的时候, case 语句会依次向下执行, 从而失去了多分支的效果

**注意事项1 **

break 不要遗漏, 否则会失去 "多分支选择" 的效果

**注意事项2 **

switch 中的值只能是 整数|枚举|字符|字符串

注意事项3 switch 不能表达复杂的条件

// 例如: 如果 num 的值在 10 到 20 之间, 就打印 hehe

**// 这样的代码使用 if 很容易表达, 但是使用 switch 就无法表示. **

**if (num > 10 && num < 20) { **

**System.out.println("hehe"); **

}

三、 循环结构

**3.1 while 循环 **

基本语法格式:

**while(布尔表达式){ **

**语句块; **

}

**循环条件为 true, 则执行循环语句; 否则结束循环 **

举例:

 求1到10的和   
public static void main(String[] args) {
       int i = 1;
       int sum = 0;
       while(i <=10) {
           sum += i;
           i++;
       }
        System.out.println(sum);
    }
}

求n的阶乘

    public static void main(String[] args) {
        int j = 3;
        int ret = 0;
            int sum = 1;
            int i = 1;
                while(i<=j) {

                    sum *=i;
                    i++;
                }
        System.out.println(sum);

        }

注意事项:

**1. 和 if 类似, while 下面的语句可以不写 { } , 但是不写的时候只能支持一条语句. 建议还是加上 { } **

**2. 和 if 类似, while 后面的 { 建议和 while 写在同一行. **

**3. 和 if 类似, while 后面不要多写 分号, 否则可能导致循环不能正确执行 **

3.2 break

** break 的功能是让循环提前结束**

代码示例:找到 100 - 200 中第一个 3 的倍数

public static void main(String[] args) {
        int num = 100;
        while (num <= 200) {
            if (num % 3 == 0) {
                System.out.println("找到了 3 的倍数, 为:" + num);
                break;
            }
            num++;
        }
// 执行结果
        //找到了 3 的倍数, 为:102

** 执行到 break 就会让循环结束.**

3.3 continue

** continue 的功能是跳过这次循环, 立即进入下次循环**

**举例: **

求1到10之间三倍数

public static void main(String[] args) {
        int i = 1;
        while(i<=10) {
            if(i % 3 !=0 ){
                i++;
                continue;
            }
            System.out.println(i);
                  i++;
        }

**执行到 continue 语句的时候, 就会立刻进入下次循环(判定循环条件), 从而不会执行到下方的打印语句 **

总结:break结束所有循环,continue结束本趟循环

** break和continue都必须在循环里,【特殊:break可以在switch语句当中】**

3.4 for 循环

基本语法:

**for(布尔表达式1;布尔表达式2;布尔表达式3){ **

**语句块; **

}

**表达式1: 用于初始化循环变量. **

**表达式2: 循环条件 **

表达式3: 更新循环变量

举例:

求1到100之间的和 
public static void main(String[] args) {
       int sum = 0;
        for (int i = 1; i <= 100; i++) {
            sum += i;
        }
        }

**注意事项 (和while循环类似) **

**1. 和 if 类似, for 下面的语句可以不写 { } , 但是不写的时候只能支持一条语句. 建议还是加上 { } **

**2. 和 if 类似, for 后面的 { 建议和 while 写在同一行. **

**3. 和 if 类似, for 后面不要多写 分号, 否则可能导致循环不能正确执行. **

**3.5 do while 循环(选学) **

**基本语法 do{ **

**循环语句; **

}while(循环条件);

**先执行循环语句, 再判定循环条件. **

举例:

打印1-10
public static void main(String[] args) {
    int num = 1;
    do {
        System.out.println(num);
        num++;
    } while (num <= 10);
}

注意事项:

**1. do while 循环最后的分号不要忘记 **

2. 一般 do while 很少用到, 更推荐使用 for 和 while.

总结:

今天还是蛮累的,加入了计划之星第三季,要更加的忙起来了,后面我会多多刷题多多写博客。

加油!!!!!!


本文转载自: https://blog.csdn.net/m0_64397675/article/details/123115761
版权归原作者 K媾‍ 所有, 如有侵权,请联系我们删除。

“【Java成王之路】第三篇:Java SE(程序逻辑控制)”的评论:

还没有评论