• 【算法中的Java】— 判断语句


    📒博客首页:Sonesang的博客

    🎉欢迎关注🔎点赞👍收藏⭐️留言📝

    ❤️ :热爱Java与算法学习,期待一起交流!

    🙏作者水平很有限,如果发现错误,求告知,多谢!

    🌺有问题可私信交流!!!


    一、if 语句

    1. 基本if-else语句

    当条件成立时,执行某些语句;否则执行另一些语句。

    1. import java.util.Scanner;
    2. public class Main {
    3.     public static void main(String[] args) {
    4.         Scanner sc = new Scanner(System.in);
    5.         int a = sc.nextInt();
    6.         if (a > 5) {
    7.             System.out.printf("%d is big!\n", a);
    8.             System.out.printf("%d + 1 = %d\n", a, a + 1);
    9.         } else {
    10.             System.out.printf("%d is small!\n", a);
    11.             System.out.printf("%d - 1 = %d\n", a, a - 1);
    12.         }
    13.     }
    14. }

    else 语句可以省略:

    1. import java.util.Scanner;
    2. public class Main {
    3.     public static void main(String[] args) {
    4.         Scanner sc = new Scanner(System.in);
    5.         int a = sc.nextInt();
    6.         if (a > 5) {
    7.             System.out.printf("%d is big!\n", a);
    8.             System.out.printf("%d + 1 = %d\n", a, a + 1);
    9.         }
    10.     }
    11. }

    当只有一条语句时,大括号可以省略:

    1. import java.util.Scanner;
    2. public class Main {
    3.     public static void main(String[] args) {
    4.         Scanner sc = new Scanner(System.in);
    5.         int a = sc.nextInt();
    6.         if (a > 5)
    7.             System.out.printf("%d is big!\n", a);
    8.         else
    9.             System.out.printf("%d is small!\n", a);
    10.     }
    11. }

    练习:输入一个整数,输出这个数的绝对值。

    1. import java.util.Scanner;
    2. public class Main {
    3.     public static void main(String[] args) {
    4.         Scanner sc = new Scanner(System.in);
    5.         int x = sc.nextInt();
    6.         if (x > 0)
    7.             System.out.println(x);
    8.         else
    9.             System.out.println(-x);
    10.     }
    11. }

    练习:输入两个整数,输出两个数中较大的那个。

    1. import java.util.Scanner;
    2. public class Main {
    3.     public static void main(String[] args) {
    4.         Scanner sc = new Scanner(System.in);
    5.         int a = sc.nextInt(), b = sc.nextInt();
    6.         if (a > b)
    7.             System.out.println(a);
    8.         else
    9.             System.out.println(b);
    10.     }
    11. }

    if-else语句内部也可以是if-else语句。

    练习:输入三个整数,输出三个数中最大的那个。

    1. import java.util.Scanner;
    2. public class Main {
    3.     public static void main(String[] args) {
    4.         Scanner sc = new Scanner(System.in);
    5.         int a = sc.nextInt(), b = sc.nextInt(), c = sc.nextInt();
    6.         if (a > b) {
    7.             if (a > c)
    8.                 System.out.println(a);
    9.             else
    10.                 System.out.println(c);
    11.         } else {
    12.             if (b > c)
    13.                 System.out.println(b);
    14.             else
    15.                 System.out.println(c);
    16.         }
    17.     }
    18. }

    2. 常用比较运算符

    (1) 大于 >
    (2) 小于 <
    (3) 大于等于 >=
    (4) 小于等于 <=
    (5) 等于 ==
    (6) 不等于 !=

    1. import java.util.Scanner;
    2. public class Main {
    3.     public static void main(String[] args) {
    4.         Scanner sc = new Scanner(System.in);
    5.         int a = sc.nextInt(), b = sc.nextInt();
    6.         if (a > b) System.out.printf("%d > %d\n", a, b);
    7.         if (a >= b) System.out.printf("%d >= %d\n", a, b);
    8.         if (a < b) System.out.printf("%d < %d\n", a, b);
    9.         if (a <= b) System.out.printf("%d <= %d\n", a, b);
    10.         if (a == b) System.out.printf("%d == %d\n", a, b);
    11.         if (a != b) System.out.printf("%d != %d\n", a, b);
    12.     }
    13. }

    3. if-else连写

    输入一个0到100之间的分数,
    如果大于等于85,输出A;
    如果大于等于70并且小于85,输出B;
    如果大于等于60并且小于70,输出C;
    如果小于60,输出 D;

    1. import java.util.Scanner;
    2. public class Main {
    3.     public static void main(String[] args) {
    4.         Scanner sc = new Scanner(System.in);
    5.         int s = sc.nextInt();
    6.         if (s >= 85) {
    7.             System.out.println("A");
    8.         } else if (s >= 70) {
    9.             System.out.println("B");
    10.         } else if (s >= 60) {
    11.             System.out.println("C");
    12.         } else {
    13.             System.out.println("D");
    14.         }
    15.     }
    16. }

    练习:

    1.判断闰年。闰年有两种情况:

    (1) 能被100整除时,必须能被400整除;
    (2) 不能被100整除时,被4整除即可。
    输入一个年份,如果是闰年输出yes,否则输出no。

    1. import java.util.Scanner;
    2. public class Main {
    3.     public static void main(String[] args) {
    4.         Scanner sc = new Scanner(System.in);
    5.         int year = sc.nextInt();
    6.         if (year % 100 == 0) {
    7.             if (year % 400 == 0)
    8.                 System.out.println("yes");
    9.             else
    10.                 System.out.println("no");
    11.         } else {
    12.             if (year % 4 == 0)
    13.                 System.out.println("yes");
    14.             else
    15.                 System.out.println("no");
    16.         }
    17.     }
    18. }

    二、条件表达式

    (1) 与 &&
    (2) 或 ||
    (3) 非 !

    例题:输入三个数,输出三个数中的最大值

    1. import java.util.Scanner;
    2. public class Main {
    3.     public static void main(String[] args) {
    4.         Scanner sc = new Scanner(System.in);
    5.         int a = sc.nextInt(), b = sc.nextInt(), c = sc.nextInt();
    6.         if (a >= b && a >= c)
    7.             System.out.println(a);
    8.         else if (b >= a && b >= c)
    9.             System.out.println(b);
    10.         else
    11.             System.out.println(c);
    12.     }
    13. }

    练习:用一条if语句,判断闰年。

    1. import java.util.Scanner;
    2. public class Main {
    3.     public static void main(String[] args) {
    4.         Scanner sc = new Scanner(System.in);
    5.         int year = sc.nextInt();
    6.         if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
    7.             System.out.println("yes");
    8.         else
    9.             System.out.println("no");
    10.     }
    11. }

    三、switch 语句

    注意: swtich语句中如果不加break语句,则从上到下匹配到第一个case后,会顺次执行后面每个case中的语句。

    1. import java.util.Scanner;
    2. public class Main {
    3.     public static void main(String[] args) {
    4.         Scanner sc = new Scanner(System.in);
    5.         int day = sc.nextInt();
    6.         String name;
    7.         switch(day) {
    8.             case 1:
    9.                 name = "Monday";
    10.                 break;
    11.             case 2:
    12.                 name = "Tuesday";
    13.                 break;
    14.             case 3:
    15.                 name = "Wednesday";
    16.                 break;
    17.             case 4:
    18.                 name = "Thursday";
    19.                 break;
    20.             case 5:
    21.                 name = "Friday";
    22.                 break;
    23.             case 6:
    24.                 name = "Saturday";
    25.                 break;
    26.             case 7:
    27.                 name = "Sunday";
    28.                 break;
    29.             default:
    30.                 name = "not valid";
    31.         }
    32.         System.out.println(name);
    33.     }
    34. }
  • 相关阅读:
    uniapp:在HBuilderX里使用夜神模拟器
    互联网采集数据有哪几种常见的方法?
    计算机毕业设计JAVA的IT技术交流和分享平台的设计与实现mybatis+源码+调试部署+系统+数据库+lw
    数据可视化:Metabase
    视频分类综述(一)
    将自己本地项目上传到git,增加IDEA操作
    File文件类的使用
    C++入门刷题练习(附代码、思路以及相关拓展)
    QT 学生管理系统 练习
    算法 矩阵最长递增路径-(递归回溯+动态规划)
  • 原文地址:https://blog.csdn.net/m0_62853489/article/details/134046123