任何复杂的逻辑均可以经过“顺序”、“分支”、“循环”三种基本的程序结构来实现。分支结构:程序在运行中,根据不一样的条件执行不一样的语句。java
三种结构:spa
语法:blog
if(条件表达式){字符串
语句块;it
}class
1)案例1,判断一个整数是否是偶数效率
public class Test {
public static void main(String[] args){
int a = 4;
if(a%2==0){
System.out.println(a+"是偶数");
}
System.out.println("over");
}
}
语法:循环
if(条件表达式){ 语法
语句块1;程序
}else{
语句块2;
}
1)案例1,判断一个整数是否是偶数,并输出结果
public class Test {
public static void main(String[] args){
int a = 4;
if(a%2==0){
System.out.println(a+"是偶数");
}else{
System.out.println(a+"不是偶数");
}
System.out.println("over");
}
}
语法:
if(条件表达式1){
语句块1;
}else if(条件表达式2){
语句块2;
}else if(条件表达式3){
语句块3;
}
1)案例1,判断一个数是正数、负数或是0并输出结果
public class Test {
public static void main(String[] args){
int a = 4;
if(a>0){
System.out.println(a+"是正数");
}else if(a<0){
System.out.println(a+"是负数");
}else if(a==0){
System.out.println(a+"是0");
}
System.out.println("over");
}
}
一种特殊的分支结构,只能用于判断整数,能够根据一个整数表达式的不一样值,从不一样程序入口开始执行,须要和break配合使用,执行完相应的语句后则退出switch块,不执行下面的语句。
若是不加break,则会在知足条件后,将该条件下面的其余条件的语句块一块儿按顺序输出,直到遇到break或}中止,以下案例2。
default选项能够不写,也不是必须放在后一个(建议放最后),默认匹配完全部条件后不匹配的状况下才会执行default语句,default能够不写break,以下案例3。
语法:
switch(判断整数){
case 1:
语句块1;
break;
case 2:
语句块2;
break;
case 3:
语句块3;
break;
default:
语句块4;
break;
}
1)案例1
public class Test {
public static void main(String[] args){
int a = 4;
switch(a){
case 1:
System.out.println("A");
break;
case 2:
System.out.println("B");
break;
case 3:
System.out.println("C");
break;
default:
System.out.println("D");
break;
}
}
}
/*
运行结果:D
*/
2)案例2,不加break的状况
public class Test {
public static void main(String[] args){
int a = 2;
switch(a){
case 1:
System.out.println("A");
break;
case 2:
System.out.println("B");
case 3:
System.out.println("C");
default:
System.out.println("D");
}
}
}
/*
运行结果:
B
C
D
*/
3)案例3,default不写在最后,default须要加break,以下状况
public class Test {
public static void main(String[] args){
int a = 4;
switch(a){
default:
System.out.println("D");
case 1:
System.out.println("A");
break;
case 2:
System.out.println("B");
break;
case 3:
System.out.println("C");
break;
}
}
}
/*
运行结果:
D
A
*/
1)优势:
2)缺点:
3)案例1,判断字符串
public class Test {
public static void main(String[] args){
String sng = "B";
switch(sng){
case "A":
System.out.println("A");
break;
case "B":
System.out.println("B");
break;
default:
System.out.println("C");
break;
}
}
}
/*
运行结果:B
*/
4)案例2,判断字符
public class Test {
public static void main(String[] args){
char sng = 'B';
switch(sng){
case 'A':
System.out.println("A");
break;
case 'B':
System.out.println("B");
break;
default:
System.out.println("C");
break;
}
}
}
/*
运行结果:B
*/