栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

7 2021.9.29

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

7 2021.9.29

顺序结构
  • JAVA的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行

  • 顺序结构是最简单的算法结构

  • 语句与语句之间,框与框之间是按从上到下的顺序进行的,他是由若干个依次执行的处理步骤组成的,他是是任何一个算法都离不开的一种基本算法结构

package com.struct;
​
public class ShunXuTest1 {
    public static void main(String[] args) {
        //如果没有其他非东西干涉他会按顺序打印
        System.out.println("1");
        System.out.println("2");
        System.out.println("3");
        System.out.println("4");
        System.out.println("5");
        System.out.println("6");
        System.out.println("7");
    }
}
结果:
    1
    2
    3
    4
    5
    6
    7
Process finished with exit code 0
​
    

选择结构

if但选择结构

  • 我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示

  • 语法

if(布尔表达式){
    //如果布尔表达式为true将执行的语句
}

列子:

package com.choose;
​
import java.util.Scanner;
​
public class ChooseTest1 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入:");
        String s = scanner.nextLine();
        //equlals意思是等于但与=号的用法不同通常用来对字符串进行判断
        if (s.equals("dpc")){
            System.out.println(s);
        }
        System.out.println("结束");
        scanner.close();
    }
}
结果;
   请输入:
dpc
dpc
结束
​
Process finished with exit code 0
 

equlals意思是等于但与'='号的用法不同通常用来对字符串进行判断'='号一般用来判断基本类型

if双选择结构

  • 那现在有个需求,公司要收购一个软件,成功了,给人支付100万元,失败了,自己找人开发。这样的需求一个if就搞不定了,我们需要两个判断,需要一个双选择结构,所以就有了if-else结构。

  • 语法

if(布尔表达式){
    //如果布尔表达式的值为true
}else{
    //如果布尔表达式的值为false
}

例子 输入一个成绩60以上为级格60一下为不及格

package com.choose;
​
import java.util.Scanner;
​
public class ChooseTest2 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入成绩:");
        int s = scanner.nextInt();
        if (s>60){
            System.out.println("成绩及格"+s);
        }else{
            System.out.println("成绩不及格"+s);
        }
        scanner.close();
    }
}
结果:
请输入成绩:
32
成绩不合格32
​
Process finished with exit code 0
​

if多选择结构

  • 我们发现刚才的代码不符合实际情况,真实的情况还可能还存在ABCD,存在多级判断。比如90-100是A ,80-90是B等等,在生活中我们很多时候选择也不仅仅是只有两个,所以我们需要一个多选择结构来处理这类问题

  • 语法

if(布尔表达式1){
    //如果是布尔表达式1的值为true执行代码
}else if(布尔表达式2){
    //如果是布尔表达式1的值为true执行代码
}else if(布尔表达式3){
    //如果是布尔表达式1的值为true执行代码
}else{
    //如果以上布尔表达式不为true执行代码
}

列子:

package com.choose;
​
import java.util.Scanner;
​
public class ChooseTest2 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入成绩:");
        int s = scanner.nextInt();
        if (s>=90&&s<=100){
            System.out.println("成绩为A"+s);
        }else if(s>=80&&s<90){
            System.out.println("成绩为B"+s);
        }else if(s>=70&&s<80){
            System.out.println("成绩为C"+s);
        }else if (s>=60&&s<70){
            System.out.println("成绩为D"+s);
        }else if (s>=0&&s<60){
            System.out.println("成绩不及格"+s);
        }else {
            System.out.println("成绩不合法");
        }
        scanner.close();
    }
}
结果:
请输入成绩:
90
成绩为A90
​
Process finished with exit code 0

注意:

  • 所写程序要严谨要考虑到所有情况防止bug

  • 语句至多有一个else 语句,else语句在所有 else if 语句之后

  • 语句可以有若干个 else 语句,他们必须在 else 语句之前

  • 其中一个 else if 语句检测为 true ,其他的 else if 以及 else 语句将跳过执行

嵌套的if结构

  • 使用嵌套的if ....else 语句是合法的。也就是说你可以在另一个 if 或者 else if 语句中使用 if 或者 else if 语句。你可以象if语句一样嵌套 else if....else

  • 语法

if(布尔表达式1){
    //如果布尔表达式 1 的值为true 执行代码
    if(布尔表达式2){
    //如果布尔表达式 2 的值为true 执行代码  
    }
}

switch多选择结构

  • 多选择结构还有一个实现方式就是swetch case 语句

  • switch case 语句判断一个变量与一系列值中是否相等,每一个值成为一个分支

  • switch 语句中的变量可以是:

    1. byte,short,int或者char

    2. 从Java SE 7开始switch 支持字符串 String 类型了

    3. 同时 case 标签必须为字符串常量或字面量

  • 语法:

switch(espression){//圆括号中可以是输入的变量
    case value:
        //语句
        break;
    case value:
        //语句
        break;
        //你可以有任意数量的case语句
    default:
       //语句 
}

列子:

package com.choose;
​
import java.util.Scanner;
​
public class ChooseTest3 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("强输入你的成绩等级:");
        String s = scanner.nextLine();
​
        switch (s){
            case "A" :
                System.out.println("优秀"); break;
            case "B":
                System.out.println("良好"); break;
            case "C":
                System.out.println("及格"); break;
            case "D":
                System.out.println("再接再厉"); break;
            default:
                System.out.println("未知等级");
​
        }
        scanner.close();
    }
}
结果:
强输入你的成绩等级:
B
良好
​
Process finished with exit code 0

注意点

  • case具有穿透性如果不加break他会接着往下继续走breal表示跳出所在的结构,break尽量写在每一个case后

  • experssion中可以是自己输入的变量

  • case后面的数据的引号要根据你导入的变量是什么而定char 是''号String是""号

  • JDK7以后才支持String类型

  •  

通过反编译(将class文件丢进IDEA中)可以了解为什么支持String通过hashCode来实现

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/282522.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号