JavaSE——程序逻辑控制

2024-05-01 1319阅读

温馨提示:这篇文章已超过372天没有更新,请注意相关的内容是否还可用!

1. 顺序结构

顺序结构 比较简单,按照代码书写的顺序一行一行执行。 例如:
 public static void main(String[] args) {
        System.out.println(111);
        System.out.println(222);
        System.out.println(333);
    }

运行结果如下:

JavaSE——程序逻辑控制

如果调整代码的书写顺序 , 则执行顺序也发生变化 : JavaSE——程序逻辑控制

2. 分支结构

分支结构包括 if 语句和 switch 语句

2.1 if 语句

2.1.1 语法格式

格式1:

if(布尔表达式){
// 语句
}
如果布尔表达式结果为true,执行if中的语句,否则不执行。 格式2:
if(布尔表达式){
// 语句1
}else{
// 语句2
}

如果布尔表达式结果为true,则执行if中语句,否则执行else中语句。

格式3:

if(布尔表达式1){
// 语句1
}else if(布尔表达式2){
// 语句2
}else{
// 语句3
}

 表达式1成立,执行语句1,否则表达式2成立,执行语句2,否则执行语句3

 2.1.2 练习

1. 判断一个数字是奇数还是偶数: 代码如下:
public static void main(String[] args) {
    int num = 10;
    if (num % 2 == 0) {
        System.out.println(num + "是偶数");
    } else {
        System.out.println(num + "是奇数");
    }
}

运行结果如下:

JavaSE——程序逻辑控制

2. 判断一个数字是正数,负数,还是零: 代码如下:
public static void main(String[] args) {
        int num = 10;
        if (num > 0) {
            System.out.println(num + "是正数");
        } else if (num  
  

运行结果如下:

JavaSE——程序逻辑控制

2.1.3 注意事项

1. 分号问题

代码如下

 public static void main(String[] args) {
        int x = 2;
        if (x == 1);
        {
            System.out.println("hehe");
        }
    }

运行结果如下:

JavaSE——程序逻辑控制

此处多写了一个 分号, 导致分号成为了 if 语句的语句体, 而 { } 中的代码已经成为了和一个 if 无关的代码块.

 2. 悬垂 else 问题

代码如下:

public static void main(String[] args) {
        int x = 10;
        int y = 10;
        if (x == 10)
            if (y == 1)
                System.out.println("aaa");
        else
                System.out.println("bbb");
    }
if / else 语句中可以不加 大括号 . 但是也可以写语句 ( 只能写一条语句 ). 此时 else 是和最接近的 if 匹配. 但是实际开发中我们 不建议 这么写 . 最好加上大括号

2.2 switch语句

2.2.1 基本语法形式

switch(表达式){
case 常量值1:
语句1;
break;
case 常量值2:
语句2;
break;

举例如下:

根据 day 的值输出星期几

public static void main(String[] args) {
        int day = 3;
        switch(day) {
            case 1:
                System.out.println("星期一");
                break;
            case 2:
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;
            case 4:
                System.out.println("星期四");
                break;
            case 5:
                System.out.println("星期五");
                break;
            case 6:
                System.out.println("星期六");
                break;
            case 7:
                System.out.println("星期日");
                break;
            default:
                System.out.println("输入有误");
                break;
        }
    }

输出结果如下:

JavaSE——程序逻辑控制

2.2.2 注意事项

1. 多个case后的常量值不可以重复 JavaSE——程序逻辑控制 2. switch的括号内只能是以下类型的表达式:
  1.      基本类型:byte、char、short、int,注意不能是long类型
  2.      引用类型:String常量串、枚举类型

JavaSE——程序逻辑控制

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

JavaSE——程序逻辑控制

4. switch 不能表达复杂的条件   例如 : 如果 num 的值在 10 到 20 之间 , 就打印 hehe   这样的代码使用 if 很容易表达 , 但是使用 switch 就无法表示 .

5. switch 虽然支持嵌套, 但是很丑,一般不推荐~

JavaSE——程序逻辑控制

代码的美观程度也是一个重要的标准 .

3. 循环结构

循环结构包括 while 循环、for 循环和 do...while 循环。

3.1 while 循环

3.1.1 基本语法形式

while(循环条件){
循环语句;
}
循环条件为 true, 则执行循环语句; 否则结束循环.

3.1.2 练习

练习1: 打印 1 - 10 的数字
public static void main(String[] args) {
    int num = 1;
    while (num  
 ②③④ 
 ---> 
 ②③④ 
 --->...---> 
 ②为 
 false 
 ,循环结束。  
 
 

 3.2.2 练习

练习1:打印 1 - 10 的数字

public static void main(String[] args) {
    for (int i = 1; i 
VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]