微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Java流程控制语句1


学习目标:

提示:这里可以添加学习目标

例如:

  • 掌握if …else判断语句
  • Switch选择语句

学习内容

第三章、流程控制语句

各种语言都会提供两种进本流程控制结构:
分支结构和循环结构

3-1、顺序结构(从上往下的执行)

public class Test2 {
    public static void main(String[] args){
        //顺序执行,根据编写的顺序,从上到下运行
        System.out.println(11);
        System.out.println(34);
        System.out.println(3);
    }
}

3-2、输入语句

三个步骤:
1、准备Scanner类型变量
2、提示
3、接收输入内容

//1、准备Scanner类型的变量
//Scanner是一个引用数据类型,它的全名称是java.util.Scanner
//input就是一个引用数据类型的变量了,赋给它的值是一个对象
java.util.Scanner input = new java.util.Scanner(System.in);//system.in认代表键盘输入

//2、提示输入xx
System.out.print("请输入一个整数:");

//3、接收输入内容
int num = input.nextInt();

//列出各种数据类型的输入
int num = input.nextInt();
long bigNum = input.nextLong();
double d = input.nextDouble();
boolean b = input.nextBoolean();
String s = input.next();
char c = input.next().charat(0);//先按照字符串接收,然后再取字符串的第一个字符(下标为0)

练习1:输入一个整数并打印它

public class Test3 {
    public static void main(String[] args){
        java.util.Scanner input = new java.util.Scanner(System.in);
        System.out.print("请输入一个整数:");
        int num = input.nextInt();
        System.out.println(num);
    }
}

练习2 :从键盘输入个人信息

public class Input {
    public static void main(String[] args){
        java.util.Scanner input = new java.util.Scanner(System.in);

        System.out.print("请输入姓名:");
        String name = input.next();

        System.out.print("请输入年龄:");
        int age = input.nextInt();

        System.out.print("请输入性别:");
        char gender = input.next().charat(0);

        System.out.print("请输入体重:");
        double weight = input.nextDouble();

        System.out.print("请输入是否已婚(true/false):");
        boolean isMarry = input.nextBoolean();

        System.out.println("姓名:"+name);
        System.out.println("年龄:"+age);
        System.out.println("性别:"+gender);
        System.out.println("体重:"+weight);
        System.out.println("婚否:"+(isMarry?"是":"否"));

    }
}

在这里插入图片描述


练习3:next()和nextLine()

  • next()方法:遇到空格等空白符,就认为输入结束
  • nextLine():遇到回车就认为输入结束
public class Input2 {
    public static void main(String[] args){
        java.util.Scanner input = new java.util.Scanner(System.in);
        System.out.print("请输入一个字符串:");
        String str = input.nextLine();
        System.out.println(str);
    }
}

在这里插入图片描述

3-3、分支结构:if语句

if(条件表达式){
	语句体;
}
true
flase
关系表达式
语句体
其他语句

练习1:

public class IfDemo1 {
    public static void main(String[] args){
        int a = 10;
        int b = 13;
        int c = 10;

        if (a == b){
            System.out.println("a等于b");
        }
        if (a == c){
            System.out.println("a等于c");
        }
        System.out.println("结束!");
    }
}

在这里插入图片描述


练习2:从键盘输入年份,请输入该年份的2月份的总天数,闰年2月29天,平年28天
闰年:

  • 能被4整除,不能被100整除
  • 能被400整除
public class InputIf {
    public static void main(String[] args){
        java.util.Scanner input = new java.util.Scanner(System.in);
        System.out.print("请输入年份:");
        int year = input.nextInt();
        int day = 28;
        if (year%4==0 && year%100!=0 || year%400==0){
            day++;
        }
        System.out.println(year + "年的2月份共" + day + "天");
        input.close();
    }
}

在这里插入图片描述

在这里插入图片描述

3-4、分支结构:if…else语句

if(关系表达式){
	语句体1;
}else{
	语句体2;
}

true
false
关系表达式
语句体1
语句体2
其他语句

练习1:判断奇偶数

public class IfElse {
    public static void main(String[] args){
        int a = 1;
        if (a % 2 == 0){
            System.out.println("a是偶数");
        }else{
            System.out.println("a基数");
        }
        System.out.println("程序结束!");
    }
}

在这里插入图片描述


练习2:使用三元运算符实现

public class IfElse {
    public static void main(String[] args){
        int a = 1;
        if (a % 2 == 0){
            System.out.println("a是偶数");
        }else{
            System.out.println("a基数");
        }
        String str;
        str = a%2==0 ? "a偶数":"a基数";
        System.out.println(str);
        System.out.println("程序结束!");
    }
}

在这里插入图片描述

练习3:求出三个数的最大值

class If_MaxValue {
    public static void main(String[] args) {
        java.util.Scanner input = new java.util.Scanner(System.in);
        System.out.print("请输入第一个整数:");
        int num1 = input.nextInt();

        System.out.print("请输入第二个整数:");
        int num2 = input.nextInt();

        System.out.print("请输入第三个整数:");
        int num3 = input.nextInt();
        int max;
        if (num1 > num2) {
            max = num1;
        } else {
            max = num2;
        }
        if (num3 > max) {
            max = num3;
        }
        System.out.println("max=" + max);
        //三目运算符实现
        int max1 = num1 > num2 ? num1 : num2;
        max1 = max1>num3?max1:num3;
        System.out.println("max1="+max1);
    }
}

在这里插入图片描述

3-5、分支结构:if…else if…else

if (判断条件1) {
  	执行语句1;
} else if (判断条件2) {
  	执行语句2;
}
...
}else if (判断条件n) {
 	执行语句n;
} else {
  	执行语句n+1;
}
true
false
true
false
true
false
执行语句1
其他后续执行语句
执行语句2
执行语句n

练习1:通过指定考试成绩,判断学生等级

  • 90 -100 优秀
  • 70-89 良好
  • 60 - 69及格
  • 60以下不及格
public class Grades_IfElse {
    public static void main(String[] args){
        int score = 89;
        if (score<=0 ||score>100){
            System.out.println("你输的成绩有误");
        } else if (score>=90 && score<=100) {
            System.out.println("优秀");
        } else if (score>=70 && score<=90) {
            System.out.println("良好");
        } else if (score >= 60 && score < 70) {
            System.out.println("及格");
        } else {
            System.out.println("不及格");
        }
    }
}

在这里插入图片描述

3-6、分支结构:if…else嵌套

public class Grades_IfElse {
    public static void main(String[] args){
//        int score = 89;
//        if (score<=0 ||score>100){
//            System.out.println("你输的成绩有误");
//        } else if (score>=90 && score<=100) {
//            System.out.println("优秀");
//        } else if (score>=70 && score<=90) {
//            System.out.println("良好");
//        } else if (score >= 60 && score < 70) {
//            System.out.println("及格");
//        } else {
//            System.out.println("不及格");
//        }
//
        int score = 89;
        if (score<=0 ||score>100){
            System.out.println("你输的成绩有误");
        } else {
            if (score >= 90 && score <= 100) {
                System.out.println("优秀");
            } else if (score >= 70 && score <= 90) {
                System.out.println("良好");
            } else if (score >= 60 && score < 70) {
                System.out.println("及格");
            } else {
                System.out.println("不及格");
            }
        }
        }
}

在这里插入图片描述

3-7、switch选择结构

switch(表达式){
    case 常量值1:
        语句块1;break;case 常量值2:
        语句块2;break;】   
    。。。
   【default:
        语句块n+1;break;】
     】
}

练习1:

public class Switch {
    public static void main(String[] args) {
        //定义指定的星期
        int weekday = 7;

        //switch语句实现选择
        switch(weekday) {
            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;
        }
    }
}

在这里插入图片描述


学习时间:

`

  • 周一至周天晚上 7 点—晚上9点

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐