双分支|学习笔记

简介: 快速学习双分支。

开发者学堂课程【Scala 核心编程-基础:双分支】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/609/detail/8911


双分支

 

基本内容

一、 双分支

二、 双分支对应的流程图

三、 双分支和单分支练习题

 

一、双分支

1、 基本语法

if (条件表达式) {

执行代码块1

} else {

执行代码块2

}

这个规则和 Java 是完全一样的。

说明:当条件表达式成立,即执行代码块1,否则执行代码块2

2、 案例演示

请看个案例 [ IfDemo2.scala]:

编写一个程序,可以输入人的年龄,如果该同志的年龄大于18岁,则输出“age>18"。 否则,输出 "age<= 18 "

接着进行案例讲解:

3、 打开 project,找到“com.atguigu.chapter04”下的“if else”包,在里面创建一个新的包“Demo02”,

package com. atguigu. chapter04. ifesle

object Demo02 {

def main(args: Array[String]): Unit = {

val age = 6

If ( age > 18) {

println("age > 18")

} else {

println("age <= 18")

}

}

}

如果年龄大于18,那么就提示age > 18,否则提示 age <= 18

执行结果:因为 age = 6,所以会输出 age <= 18

 

二、双分支对应的流程图

在流程图中,存在条件表达式,;如果条件表达式正确,那么就执行代码块1;如果条件表达式错误那么就执行代码块2;

流程图如下图所示:

image.png

 

三、单分支和双分支练习题

1、 案例一:

对下列代码,若有输出,指出输出结果。

var X= 4

var y= 1

if(x> 2)

If(y> 2) {

println(x + у)

}

println(" atguigu")//输出内容是“atguigu

} else

println("xis "+ x)

//输出内容是“atguigu

2、 案例二:编写程序,声明2个 Int 型变量并赋值。判断两数之和,如果大于等于50,打印 “hello world!"

此处不做过多的讲解。

3、 案例三:编写程序,声明2个 Double 型变量并赋值。判断第一 一个数大于10.0, 且第2个数小于20.0,打印两数之积。

此处不做过多的讲解。

4、 案例四:【选作定义两个变量 Int,判断二者的和,是否既能被3又能被5整除,打印提示信息

学习要求:学习表达式的判断;

操作方法:首先创建一个新的文件 exercise01;这是 ifelse 的练习;

1解题方法一:

package com. atguigu. chapter04. ifesle

object Exercise01 {

def main(args: Array[String]): Unit = {

/*

[选作]定义两个变量 Int,判断二者的和,是否既能被3. 又能被5整除,打印提示信息

*/

val num1 = 10

val num2 = 2

//首先定义两个值;

val sum = num1 + num2

//将它两个数的和加起来;

if(sum%3==0&&sum%5==0) {

//使用 if 语句

println("能被3又能被5整除")

//如果两个条件都能被满足,那么就证明既能被3又能被5整除

} else {

println("能被3又能被5整除不成立")

}

}

}

运行结果:能被3又能被5整除不成立

2解题方法二:

将“val num2 = 2”改为“val num2 = 5”,那么:

package com. atguigu. chapter04. ifesle

object Exercise01 {

def main(args: Array[String]): Unit = {

/*

[选作]定义两个变量 Int,判断二者的和,是否既能被3. 又能被5整除,打印提示信息

*/

val num1 = 10

val num2 = 5

//首先定义两个值;

val sum = num1 + num2

//将它两个数的和加起来;

if(sum%3==0&&sum%5==0) {

//使用 if 语句

println("能被3又能被5整除")

//如果两个条件都能被满足,那么就证明既能被3又能被5整除

} else {

println("能被3又能被5整除不成立")

}

}

}

运行结果:能被3又能被5整除 成立

5、 案例五:判断一个年份是否是闰年,闰年的条件是符合下面二者之一: (1)年份能被4整除,但不能被100整除; (2)能被400整除

/*

判断一个年份是否是闰年,闰年的条件是符合下面二者之- -: (1) 年份能被4整除,但不能被100整除 ; (2)能被400整除

*/

//定义一个变量保存年份

val year = 2018

if((year % 4 == 0 && year % 100 !=0)||(year%400==0)){

println(s"${year} 是闰年...")

} else {

println(s"${year} 是闰年")

}

}

运行结果:

2018年不是闰年;

闰年和平年最大的差别是2月份,闰年2月有29天,平年是28天。

//因为语句中“年份能被4整除,但不能被100整除”包含了两个条件,这两个条件是一个整体,所以此时需要在语句中再加入一个“( )”

6、 //“(2)能被400整除”,这个条件是或者条件,也需要包含在语句中;

7、 以上的题目讲解

说明:因为在此之前的几节课都学习过 Java 了,因此上面的题对应该很简单,自己课后练习下即可,解题思路和Java完全一样。

相关文章
|
数据采集 存储 JSON
如何使用Scrapy提取和处理数据
如何使用Scrapy提取和处理数据
433 0
|
关系型数据库 MySQL Java
RDS MySQL SSL 使用详解
RDS MySQL SSL 使用详解
|
消息中间件 缓存 监控
阿里P8整理的《百亿级并发系统设计》实战教程,实在是太香了
面试官问:如何设计一个高并发系统? 说实话,如果面试官问你这个题目,那么你必须要使出全身吃奶劲了。为啥?因为你没看到现在很多公司招聘的 JD 里都是说啥有高并发经验者优先。 如果你确实有真才实学,在互联网公司里干过高并发系统,那你确实拿 offer 基本如探囊取物,没啥问题。面试官也绝对不会这样来问你,否则他就是蠢。 假设你在某知名电商公司干过高并发系统,用户上亿,一天流量几十亿,高峰期并发量上万,甚至是十万。那么人家一定会仔细盘问你的系统架构,你们系统啥架构?怎么部署的?部署了多少台机器?缓存咋用的?MQ 咋用的?数据库咋用的?就是深挖你到底是如何扛住高并发的。
|
4天前
|
数据采集 人工智能 安全
|
13天前
|
云安全 监控 安全
|
5天前
|
自然语言处理 API
万相 Wan2.6 全新升级发布!人人都能当导演的时代来了
通义万相2.6全新升级,支持文生图、图生视频、文生视频,打造电影级创作体验。智能分镜、角色扮演、音画同步,让创意一键成片,大众也能轻松制作高质量短视频。
1122 152
|
19天前
|
机器学习/深度学习 人工智能 自然语言处理
Z-Image:冲击体验上限的下一代图像生成模型
通义实验室推出全新文生图模型Z-Image,以6B参数实现“快、稳、轻、准”突破。Turbo版本仅需8步亚秒级生成,支持16GB显存设备,中英双语理解与文字渲染尤为出色,真实感和美学表现媲美国际顶尖模型,被誉为“最值得关注的开源生图模型之一”。
1793 9