当前位置:网站首页>分支控制if-else
分支控制if-else
2022-08-04 15:30:00 【Hyf 。】
目录
分支控制if-else:
让程序有选择的执行,分支控制有三种:单分支、双分支、多分支
单分支
基本语法
if(条件表达式){
执行代码块
}
说明:当条件表达式为true时,就会执行{ } 的代码
双分支
基本语法
if(条件表达式){
执行代码块1
}else{
执行代码块2
}
多分支
基本语法
if(条件表达式){
执行代码块1
}else if (条件表达式2) {
执行代码块2
}
...........
else{
执行代码块n
}
案例实操
package Chapter04
import scala.io.StdIn
object Test01_IfElse {
def main(args: Array[String]): Unit = {
println("请你输入你的年龄")
val age:Int = StdIn.readInt()
//1、单分支
if (age>=18){
println("你已经成年")
}
println("---------------")
//2、多分支
if (age>=18){
println("你已经成年")
}else{
println("你还未成年")
}
println("---------------")
//3、多分支
if (age<=6){
println("童年人")
} else if (age<18){
println("青年人")
}
else if (age<35){
println("成年人")
}else if (age<60){
println("中年人")
}else{
println("老年人")
}
}
}
运行结果

分支语句的返回值
Scala 中 if else 表达式其实是有返回值的,具体返回值取决于满足条件的 代码体的最后一行内容。
定义返回值 String 不可以返回 Until,定义 Until 可以返回 String
Scala 中返回值类型不一致,取它们共同的祖先类型。
测试:
1、返回值为Until
2、返回值为String
3、返回值不一致时,需要返回它们的共同父类
package Chapter04
import scala.io.StdIn
object Test01_IfElse {
def main(args: Array[String]): Unit = {
println("请你输入你的年龄")
val age:Int = StdIn.readInt()
//3、多分支
1、
val result:Unit =if (age<=6){
println("童年人")
} else if (age<18){
println("青年人")
}
else if (age<35){
println("成年人")
}else if (age<60){
println("中年人")
}else{
println("老年人")
}
println("result:"+result)
println("-----------")
2、
val result1:String =if (age<=6){
println("童年人")
"童年人"
} else if (age<18){
println("青年人")
"青年人"
}
else if (age<35){
println("成年人")
"成年人"
}else if (age<60){
println("中年人")
"中年人"
}else{
println("老年人")
"老年人"
}
println("result1:"+result1)
println("----------")
3、
val result2: Any=if (age<=6){
println("童年人")
"童年人"
} else if (age<18){
println("青年人")
"青年人"
}
else if (age<35){
println("成年人")
age
}else if (age<60){
println("中年人")
age
}else{
println("老年人")
age
}
println("result2:"+result2)
println("----------")
}
}运行结果
输入的age为:87

Java 中的三元运算符可以用 if else 实现
如果大括号{}内的逻辑代码只有一行,大括号可以省略。如果省略大括号,if 只对最近 的一行逻辑代码起作用。Java 中的三元运算符可以用 if else 实现
java 三元运算符 a?b:c
String res = (age>=18)?"成年人":"未成年人"
package Chapter04
import scala.io.StdIn
object Test01_IfElse {
def main(args: Array[String]): Unit = {
println("请你输入你的年龄")
val age:Int = StdIn.readInt()
val result3:String=if(age>=18){
"成年人"
}else{
"未成年人"
}
println("result3:"+result3)
val result4:String=if(age>=18) "成年人" else "未成年人"
println("result4:"+result4)
}
}嵌套分支
超过或者三重嵌套分支比较复杂,逻辑比较复杂,不建议使用
package Chapter04
import scala.io.StdIn
object Test01_IfElse {
def main(args: Array[String]): Unit = {
println("请你输入你的年龄")
val age:Int = StdIn.readInt()
//5、嵌套分支
if (age>=18) {
println("成年")
if (age >= 35) {
if (age >= 60) {
println("老年")
}else {
println("中年")
}
}else{
println("青年")
}
}else{
println("未成年")
if(age<=6){
println("童年")
}else{
println("未成年人")
}
}
}
}
运行结果
输入age为:1

边栏推荐
猜你喜欢
随机推荐
RTC 场景下的屏幕共享优化实践
苏秋贵:揭秘绿联科技用5年时间从0做到6亿,如何一枝独秀?
Http-Sumggling缓存漏洞分析
Jupyter常用操作总结(强烈建议收藏,持续更新实用操作)
Next -21- 添加相册系列 - 1- 框架设置
你一定从未看过如此通俗易懂的YOLO系列(从v1到v5)模型解读
leetcode: 251. Expanding 2D Vectors
阿尔萨斯监控平台&普罗米修斯监控平台对服务器资源的监控
JVM调优-GC基本原理和调优关键分析
多商户商城系统功能拆解24讲-平台端分销会员
什么,你告诉我?作用域也分种类?
【北亚数据恢复】IBM System Storage存储lvm信息丢失,卷访问不了的数据恢复方案
IP第十五天笔记
Next -20- 使用自定义样式 (custom style)
动态数组底层是如何实现的
成员变量与局部变量的区别有哪些
24、shell编程-流程控制
Leetcode: 215 disorderly to find the first big k element in the array
2022杭电多校4
什么是 DevOps?看这一篇就够了!








