编程语言有3种语句的顺序
顺序结构:从上往下,逐行执行
选择结构:根据需要,有些执行,有些不执行
循环结构:反复做同一件事
下面主要来说选择结构:
1.单分支if语句
语法格式:
if(表达式){
语句;
}
规则:只要表达式为true,则执行if中的语句,反之表达式为flase,不执行if中的语句
public static voidmain(String[] args) {//TODO Auto-generated method stub
int age=20;if(age>=18){
System.out.println("您可以注册!");
}
}
2.if-else语句
语法结构:
if(表达式){
语句1
}else{
语句2
}
规则:如果表达式为true,则执行if语句,反之,如果表达式为flase,执行else中语句
注意:else的后面不要加入任何条件,else本事就是if的相反条件
程序要么执行if语句,要么执行else语句,两端必须要执行一端
public classTest1 {public static voidmain(String[] args) {//TODO Auto-generated method stub
int age=12;if(age>=16){
System.out.println("您可以注册!");
}else{
System.out.println("您还小。。。再等几年");
}
}
}
3.多分支if-else if
格式:if(表达式1){
语句1
}else if(表达式2){
语句2
}else if(表达式3){
语句3
}……else{
语句n
}
语法规则:多分支if-else if特点有多重执行的可能,但只执行其中一条语句
如果表达式1为真,执行语句1,如果表达式2为真,执行语句2,如果表达式3为真,执行语句3……都不满足条件,执行语句n
importjava.util.Scanner;public classTest1 {public static voidmain(String[] args) {//TODO Auto-generated method stub
Scanner scanner=newScanner(System.in);int num=scanner.nextInt();if(num>0) {
System.out.println("整数");
}else if(num==0) {
System.out.println("零");
}else{
System.out.println("负数");
}
}
}
功能跟if-else if很相似,多个分支,只执行一个分支
语法格式:
switch(变量){
case 值1:
语句1;
break;
case值2:
语句2;
break;
Case 值3:
语句3;
break;
…
default:
上面的分支全部不满足,执行该语句;
}
语法规则:switch中变量的值,如果等于case中的值,就执行case语句,通过break,退出switch语句
switch中变量的取值:byte,short,int,char
jdk 1.7可以使用String
break:用于退出switch语句,如果不加break语句,代码会一直往下执行,直到遇到break/default退出switch语句(称为“击穿”)
importjava.util.Scanner;public classTest1 {public static voidmain(String[] args) {//TODO Auto-generated method stub
Scanner scanner=newScanner(System.in);
System.out.println("请输入你的分数(5分制):");int score=scanner.nextInt();switch(score) {case 5:
System.out.println("优秀");break;case 4:
System.out.println("良好");break;case 3:
System.out.println("及格");break;case 2:case 1:case 0:
System.out.println("不及格");break;default:
System.out.println("输入有误");
}
}
}