Java基础编程之分支结构和循环结构
知识点1:分支结构1:if-else
/*
一、流程控制分为三类结构:顺序结构、分支结构、循环结构
二、分支结构1:if-else
1.格式1:
if(条件表达式){
执行语句1;
}
2.格式2:“二选一”
if(条件表达式){
执行语句1;
}else{
执行语句2;
}
3.格式3:“多选一”
if(条件表达式1){
执行语句1;
}else if(条件表达式2){
执行语句2;
}else if(条件表达式3){
执行语句3;
}
....
else{
执行语句2;
}
*/
class IfTest {
public static void main(String[] args) {
int heartBeats = 80;
if(heartBeats < 60 || heartBeats > 100){
System.out.println("你需要做进一步的检查");
}
System.out.println("体检结束");
int age = 23;
if(age >= 22){
System.out.println("你已经到了合法的结婚年龄");
}else{
System.out.println("你只能先谈谈恋爱~~");
}
int myAge = 12;
if(myAge < 0 || myAge > 150){
System.out.println("你输入的数据不合法~~");
}else if(myAge < 6){
System.out.println("婴幼儿时期");
}else if(myAge < 25){
System.out.println("青少年时期");
}else if(myAge < 60){
System.out.println("壮年时期");
}else{
System.out.println("老年时期");
}
System.out.println("执行结束");
}
}
说明1:
如果多个条件表达式彼此之间是“互斥”关系(即:没有交集),则哪个条件表达式声明在上面,哪个条件表达式声明在下面都可以。
如果多个条件表达式彼此之间是“包含”关系,则需要将条件表达式范围小的声明在条件表达式范围大的上面。
说明2:如果if-else结构中的某一个if或else if 或 else只有一行执行语句,则可以省略其一对{}。但是,不建议省略
*/
知识点2:if-else的使用
import java.util.Scanner;
class IfTest {
public static void main(String[] args) {
Scanner scann = new Scanner(System.in);
System.out.println("请输入你的身高(cm):");
int height = scann.nextInt();
System.out.println("请输入你的财富(单位:千万):");
double wealth = scann.nextDouble();
System.out.println("请告诉我,你帅否?(是/否):");
String isHandsome = scann.next();
if(height >= 180 && wealth >= 1 && "是".equals(isHandsome)){
System.out.println("我一定要嫁给他!!!");
}else if(height >= 180 || wealth >= 1 || "是".equals(isHandsome)){
System.out.println("嫁吧,比上不足,比下有余。");
}else{
System.out.println("不嫁!");
}
}
}
知识点3:switch-case的使用
/*
分支结构2:switch-case
switch(表达式){
case 常量1:
执行语句1;
break;
case 常量2:
执行语句2;
break;
case 常量3:
执行语句3;
break;
...
default :
执行语句n;
break;
}
说明:
1. 执行过程:根据switch中表达式的值,依次匹配各个case中的常量。当与某个常量匹配上时,就进入case中,调用其执行语句。
执行完之后,仍然会考虑继续执行其后的case中的结构,直到遇到break关键字或执行完后续的所有的case结构。
2. switch中的表达式可以是如下的类型:byte \ short \ char \ int ; 枚举类(jdk5.0新增) \ String(jdk7.0新增)
3. switch-case结构的局限性:① switch中的表达式有类型的限制 ② 匹配的多个case,通常都不会太多。
4. default相当于if-else结构中的else。
default是可选的,位置也是灵活的。
5. switch-case与if-else的转换:
switch-case结构一定可以改写为if-else;
if-else不一定能改写成switch-case.
建议:在switch-case和if-else都可以使用的场景下,建议大家使用switch-case。因为执行效率稍高
*/
class SwitchCaseTest {
public static void main(String[] args) {
int num = 5;
switch(num){
case 0:
System.out.println("zero");
break;
case 1:
System.out.println("one");
break;
case 2:
System.out.println("two");
break;
case 3:
System.out.println("three");