单分支
if(判断语句){
//满足,则执行的代码块
}else{
//不满足判断语句时,执行的代码块
}
多分支
if(判断语句1){
//满足判断语句1,执行的代码块
}else if(判断语句2){
//不满足判断语句1,满足判断语句2,执行代码块
}else{
//既不满足语句1,也不满足语句2,执行的代码块
}
java通过if else语法查找最大值,如下:
public class IfTest3 {
public static void main(String[] args) {
int a = 10;
int b = 100;
int c = 92;
if (a == b && b == c) {
System.out.println("a、b、c等大,为:" + a);
} else if (a > b && a > c) {
System.out.println("a最大,为:" + a);
} else if (b > a && b > c) {
System.out.println("b最大,为:" + b);
} else if (c > a && c > b) {
System.out.println("c最大,为:" + c);
} else if (a == b && b > c) {
System.out.println("a、b等大,为" + a);
} else if (a == c && a > b) {
System.out.println("a、c等大,为" + a);
} else if (b == c && b > a) {
System.out.println("b、c等大,为" + b);
}
}
}
;和{}的作用
但是if ( ) 后面必须跟着一条语句,作为if的执行语句。
当if只执行一条语句时,不需要用大括号{}包起来,这条语句后面的分号;意味着if语句的结束.
当如果想让if()执行多条语句,就必须有{}括起来,这个时候,if语句结束不需要用;.因为{}的结束就意味着if语句的结束。
package File_1;
public class File_1 {
public static void main(String[] args) {
String str = "hxl";
if(str.equals("xl"))
System.out.println("值是hxl");//if语句在这里结束
System.out.println("哈哈");//最后的结果是 哈哈
}
当有else时,如果else也只执行一条语句,也可以不用{},用;代替结束,如果既没有写{},也没有写;,那么一句语句写完之后写下一条语句是,编译就会不通过.
package File_4;
public class File_2 {
public static void main(String[] args) {
String str = "hxl";
if(str.equals("hxl"))
System.out.println("值是hxl");//if()满足执行这条语句
else
System.out.println("但是");//if()不满足执行这条语句
//最后的输出结果是值是hxl
}
}
多支结构时,依然满足这样的语法
package File_4;
public class File_2 {
public static void main(String[] args) {
String str = "hxl";
if(str.equals("hxl"))
System.out.println("值是hxl");//if()满足执行这条语句
else if("x".equals(str))
System.out.println("但是");//if()不满足执行这条语句
System.out.println("最后的属于main的,不是if的");
//最后的输出结果是值是hxl 最后的属于main的,不是if的
}