使用 if...(else...) 进行条件判断,语法如下:
//2个条件 if(condition){ statement1; statement2; } else{ statement3; } //多个条件 if(condition1){ statement1; ... } else if(condition2){ statement2; ... } else{ statement3; ... }
举例:
public class TestIf { public static void main(String[] args){ Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); if (n>=60 & n<90){ System.out.println("及格了!"); //60~89:及格 } else if(n>=90){ System.out.println("优秀!"); //90~100:优秀 } else{ System.out.println("不及格!"); //<60:不及格 } } }二、判断引用类型相等 1. 使用“==”:
- 判断数值类型时,“==”可以用于判断值是否相等;
- 判断引用类型时,“==”不是判断“值”是否相等,而是判断是否指向相同的数据对象。
举例:
public class TestEqual { public static void main(String[] args){ int[] data = {10,20}; String s1 = "hello"; String s2 = "hello"; String s3 = "HELLO".toLowerCase(); String s4 = s1; System.out.println(data[0]==data[1]); //false System.out.println(s1==s2); //true System.out.println(s2==s3); //false System.out.println(s1==s4); //true System.out.print("End"); } }
输出:
2. equals()方法判断引用类型的变量内容是否相等,使用equals()方法,语法如下:s1.equals(s2)。
★注意:如果s1为null,则报错NullPointerException,若要避免这类错误:
- 可以利用短路运算符&&,要求s1!=null;
- 或者可以将不为null的对象s2放在前面。
举例:
public class TestEquals { public static void main(String[] args){ String s1 = "hello"; String s2 = "HELLO".toLowerCase(); System.out.println("s1="+s1); System.out.println("s2="+s2); if (s1.equals(s2)){ System.out.println("s1 equals s2"); } else{ System.out.println("s1 not equals s2"); } } }
输出:
三、switch 1. switch语句根据不同的表达式结果执行不同的分支。句法如下:switch(statement){ case statement1: ...; break; case statement2: ...; break; default: ...; }
- 当statement=statement1或statement2时,执行case statement1或case statement2之后的语句,直到遇到break,跳出switch;
- 当statement没有匹配到case时,执行default语句,如果没有定义default则不执行语句;
switch(statement){ case statement1 -> { ...; } case statement2 -> { ...; } default -> { ...; } }
举例:
public class TestSwitch { public static void main(String[] args){ String str = "apple"; switch(str){ case "apple" -> { System.out.print(str); } case "peal", "mango" -> { System.out.print(str+"88"); } } } }
输出:
综上,使用新语法可以简化代码,表现在:
- 不需要注意“break”;
- case表达式可以通过“,”进行合并。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)