Java学习之选择结构

if选择结构

为什么需要if选择结构

实际生活中会遇到一些情景需要根据条件判断之后再做下一步处理

if的判断条件

  1. 多个条件之间用逻辑运算符连接,具体逻辑运算符用法可以参考我的博客《Java学习之变量、数据类型和运算符
  2. 字符串是否相等比较:变量.equals(“需要比较的字符串”);字符串在栈中存放的是地址,实际内容存放在常量池中,直接用比较运算符的话比较的是地址

基本的if选择结构

流程控制图

Created with Raphaël 2.2.0 开始 条件 代码块 yes

语法

if ( 条件 ) { 
        //代码块 
}

if-else选择结构(双分支结构)

流程控制图

Created with Raphaël 2.2.0 开始 条件 代码块1 代码块2 yes no

语法

if ( 条件 ) { 
        //代码块1  
 }else { 
       //代码块2 
}

多重if选择结构(多分支结构)

语法

if ( 条件 1) { 
     //代码块1  
 }
 else if ( 条件2 ) { 
     //代码块2 
 }
else { 
     //代码块3 
 }

嵌套if选择结构

语法

if(条件1) {
      if(条件2) {
              代码块1
      } else {
              代码块2
      }
} else {
      代码块3
}

switch选择结构

语法

switch (表达式) {
case 常量 1:
语句;
break;
case 常量 2:
语句;
break;

default:
	语句;

}

特点

  1. 等值判断
  2. switch后面小括号中表达式的值必须是整型或字符型,枚举类型,jdk7及以后也可以是字符串类型
  3. 通常,default块放在末尾,也可以省略
    4.break不能省略,否则会不进行匹配继续执行,直到遇到break
    和if比较
    5.同时匹配多个case的情况
//下列代码根据名次ranking的值判断学生可以获得的奖励,第一名和第二名时奖励相同
//下列代码中匹配了case1或case2都可以参加夏令营和获得笔记本
switch (ranking) {
			case 1:
			case 2:
				System.out.println("参加夏令营");
				System.out.println("奖励笔记本");
				break;
			case 3:
				System.out.println("奖励硬盘");
				break;
			default:
				System.out.println("没有奖励");
				break;
			}

与多重if选择结构区别

1.switch适用于等值判断;
2.if适用于连续区间判断

猜你喜欢

转载自blog.csdn.net/sinat_41628872/article/details/89159974
今日推荐