IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Java逻辑控制 -> 正文阅读

[Java知识库]Java逻辑控制

目录

1 顺序结构

2 分支结构

2.1 if语句

?2.2 switch语句

3 循环结构

3.1while循环

3.2 break语句?

?3.3?continue语句

?3.4 for循环

3.5 do while 循环

?4 逻辑控制综合案例

4.1 输出1000~1200之间所有的闰年

4.2 计算1~100之间9出现的次数

?


1 顺序结构

顺序结构比较简单,就是代码一行一行的执行,本节之前写的所有代码都是顺序结构。

例如:

public static void main(String[] args) {
        int a=10;
        System.out.println(a);
        System.out.println("hhhh");
        double f=10.732;
        System.out.println(f);

2 分支结构

2.1 if语句

基本语法形式1:

if(布尔表达式){

//条件满足时的要执行的语句

}

示例代码1:?

public static void main(String[] args) {
       int a=10;
       int b=20;
       if(a<b){
           System.out.println(a);//a是10 b是20 a<b条件成立执行该语句
       }
       if(a>b){
           System.out.println(b);//a是10 b是20 a>b条件不成立不执行该语句
       }

基本语法形式2:

if(布尔表达式){

? ? ? ? //条件成立是执行的语句

}?

else{

//条件不成立时执行的语句

}

示例代码2:

public static void main(String[] args) {
        int a=10;
        int b=20;
        if(a>b){
            System.out.println(a);//a是10 b是20 a>b条件不成立不执行该语句
        }
        else{
            System.out.println(b);//a是10 b是20 a>b条件成立执行该语句
            
        }
    }

?基本语法形式3:

if(布尔表达式1){

//表达式1为true,执行的代码

}

else if(布尔表达式2){

//表达式2为true,执行的代码

}

else{

//表达式1和表达式2都为falses,执行的代码?

}

示例代码3:

public static void main(String[] args) {
        int a=10;
        int b=10;
        if(a>b){
            System.out.println(a);//表达式1不成立,该语句不执行
        }
        else if(b>a){
            System.out.println(b);//表达式2不成立。该语句不执行
        }
        else{

            System.out.print("a=b=");//表达式1和表达式2都不成立,该语句执行
            System.out.println(a);//注意:表达式成立时执行的语句可以是多条
        }
    }

?注意事项1:

if语句可以嵌套使用,当if(布尔表达式)中的表达式成立时,就会执行对应的语句块 ,在这个对应的语句块中也可以使用if语句

例如:找出三个数中最大的数

public static void main(String[] args) {
        int a=50;
        int b=70;
        int c=20;
        System.out.print("最大的数是");
        if(a>b){
            //a>b不成立,所以不执行改语句块
            if(c>a){

                System.out.println(c);
            }
            else{
                System.out.println(a);
            }
        }
        else{
            //a>b不成立,所以执行该语句块
            if(c>b){
                System.out.println(c);//c>b不成立,不执行该语句
            }
            else{
                System.out.println(b);//c>b不成立,所以执行改语句
            }
        }
    }

?注意事项2:

if语句中的布尔表达式成立时,会执行if所对应的语句块。如果不加“{}”时,就会执行紧随其后的一条语句

例如:

public static void main(String[] args) {
        int a=10;
        int b=20;
        if(a>b)
            System.out.println(a);//此时if条件不成立,所以不会执行这条语句
            System.out.println(b);//虽然if条件不成立,但是这条语句已经超出了if
                                  //语句块,所以这条语句还会执行
    }

?2.2 switch语句

基本语法格式

switch ( 整数 | 枚举 | 字符 | 字符串 ){
case 内容 1 : {
内容满足时执行语句 ;
[ break ;]
}
case 内容 2 : {
内容满足时执行语句 ;
[ break ;]
}
...
default :{
内容都不满足时执行语句 ;
[ break ;]
}

?示例代码:

 public static void main(String[] args) {
        int day=5;
        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;
        }
    }

根据 switch 中值的不同 , 会执行对应的 case 语句 . 遇到 break 就会结束该 case 语句 .
如果 switch 中的值没有匹配的 case, 就会执行 default 中的语句 .
我们建议一个 switch 语句最好都要带上 default.

3 循环结构

3.1while循环

基本语法格式:

while(布尔表达式){

//要执行的语句块;

}

当布尔表达式为true,循环执行要执行的语句块,否则结束循环。

示例代码:输出1~10

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

?注意事项:

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

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

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

3.2 break语句?

break 的功能是让循环提前结束 .
例如:找出1~10中第一个3的倍数
public static void main(String[] args) {
        int  i=1;
        while(i<=10){
            if(i%3==0){
                System.out.println(i);
                break;//遇到break语句,循环结束
            }
            i++;
        }
    }

?3.3?continue语句

continue 的功能是跳过这次循环 , 立即进入下次循环 .
例如:找出1~10之间所有的偶数
public static void main(String[] args) {
        int i=1;
        while(i<=10){
            if(i%2!=0){
                i++;
                continue;//遇到continue语句,会直接进入下一次循环,不会执行后面的语句
            }
            System.out.println(i);
            i++;

        }
    }

?3.4 for循环

基本语法格式:

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

//循执行的语句块

}

for循环执行的顺序是:

首次循环:首先执行表达式1,再执行布尔表达式2,然后执行循环体;最后执行表达式3。

其余循环: 首先执行布尔表达式2,然后执行循环体,最后执行表达式3。

结束循环: 布尔表达式的值为false.

示例代码:输出1~10之间的所有数

public static void main(String[] args) {
        for (int i =1; i <=10 ; i++) {
            System.out.println(i);
        }
    }

?注意事项:

1:break和continue对for循环同样适用。

2:和 if 类似 , for 下面的语句可以不写 { } , 但是不写的时候只能支持一条语句 . 建议还是加上 { }
3:? if 类似 , for 后面的 { 建议和 while 写在同一行 .
4:和 if 类似 , for 后面不要多写 分号 , 否则可能导致循环不能正确执行

3.5 do while 循环

基本语法格式:

do{

//循环执行的语句
}while(布尔表达式);

do whiie 循环的执行顺序

首先执行循环语句,然后再判断布尔表达式是后为true.

因此,无论布尔表达式的值是否是true,第一次循环都会执行。

示例代码1:打印1~10

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

示例代码2:演示布尔表达式不成立,循环语句执行一次

public static void main(String[] args) {
        int  i=0;
        do{
            System.out.println(i);
        }while (i>0);//i=0 i>0表达式的值为false
    }

?4 逻辑控制综合案例

4.1 输出1000~1200之间所有的闰年

 public static void main2(String[] args) {

        for (int i = 1000; i <=1200 ; i++) {
            if(i%100!=0&&i%4==0||i*400==0)
            {
                System.out.println(i);
            }
        }
    }

4.2 计算1~100之间9出现的次数

public static void main(String[] args) {
        int i=1;
        int num=0;
        while(i<=100){
            int j=i;
            /*
               求出一个数各个位上的数字
               循环执行以下操作
               第一步:用这个数取余10的到个数
               第二步:这个数除等10
               第三步:判断这个数是不是0
             */
            while (j>0){
                if(j%10==9) {
                    num++;
                }
                j=j/10;
            }
            i++;
        }
        System.out.println(num);//9 19 29 39 49 59 69 79 89 中各出现一次9 
                                //90 91 92 93 94 95 96 97 98中各出现一次9
                                //99中出现两次9   总共20个9    
}

?

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-10-18 17:15:46  更:2021-10-18 17:17:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 22:34:56-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码