控制语句 for while if switch
一、for…in 结构
for i in 0...4{
print(i) //使用到了变量 i
}
for _ in 0...1{ // 后期没有使用到变量,可以直接用个下划线 _ 占位就行了
print("hello")
}
二、while 结构
var i : Int = 0
while i < 5 {
print("a")
i += 1
}
//repeat…while 结构 (相当于do...while)
var j : Int = 0
repeat {
print("b")
j += 1
}while j < 2
三、if语句
//if … else if语句
var h : Int = 10
if h < 5{ //条件的判断没有小括号
print("c")
}else if h < 20 {
print("d")
}
四、switch结构
//不存在隐式的贯穿 (可以不写break)
1.switch…case 中的多个条件的使用
var sw1 : Int = 1
switch sw1 {
case 1,2,3 : print("aaa")
// break
case 5,6,7 : print("bbb")
// break
case 10,11 : print("ccc")
// break
case 15,16 : print("ddd")
// break
default:
print("eee")
}
2.switch…case 中的区间使用
var sec = 87
switch sec {
case 91...100:
print("A")
case 81...90:
print("B")
default:
print("C")
}
3.switch…case 中的元组_使用
var yuanzu = (2,2)
switch yuanzu{
case (1,1):
print("1,1")
case (2,2):
print("2,2")
case (3,3):
print("3,3")
default:
print("4,4")
}
//只判断第一个元素,第二个用下划线_表示任意
var yuanzu1 = (2,3)
switch yuanzu1{
case (_,3):
print("1,1")
case (2,_):
print("2,2")
case (3,_):
print("3,3")
default:
print("4,4")
}
4.switch…case 中的元组值绑定
var yuanzu2 = (2,3)
switch yuanzu2{
case (let x,3): //类似下滑线, 但是能获取到
print(x)
case (2,2):
print("2,2")
case (3,3):
print("3,3")
default:
print("4,4")
}
5.switch…case 中的where条件语句
var yuanzu3 = (2,3)
switch yuanzu3{
case let (x, y) where x==y :
print("相同")
default:
print("不同")
}
6.switch…case 中的fall through
var yuanzu4 = (2,2)
switch yuanzu4{
case (1,1):
print("1,1")
case (2,2):
print("2,2")
fallthrough //贯穿,继续向下执行
case (3,3):
print("3,3")
default:
break
}
总结:控制转移语句
//1.continue 告诉一个循环体立刻停止 本次 循环迭代,重新开始下次循环迭代
//2.break 会立刻结束 整个 控制流的执行
//a.当在一个循环体中使用break时,会立刻中断该循环体的执行,然后跳转到表示循环体结束的大括号(})后的第一行代码。不会再有本次循环迭代的代码被执行,也不会再有下次的循环迭代产生。
//b.当在一个switch代码块中使用break时,会立即中断该switch代码块的执行,并且跳转到表示switch代码块结束的大括号(})后的第一行代码。
//3.fallthrough 贯穿关键字不会检查它下一个将会落入执行的 case 中的匹配条件。fallthrough简单地使代码执行继续连接到下一个 case 中的执行代码
例1:
for i in 0...3{
for j in 0...3{
if j == 2{
continue //停止本次循环
}
print("i \(i) j \(j)")
}
}
例2:
//终止带 标签 的循环(给循环加个名字)
abc : for i in 0...3{
def : for j in 0...3{
if j == 2{
break abc //终止abc循环
}
print("i \(i) j \(j)")
}
}
控制语句 for while if switch的更多相关文章
- 控制语句(if-else+循环+switch)汇编规则
[1]说说条件码 最常用的的条件码有: CF:进位标志 (无符号溢出) ZF:零标志 SF:符号标志(结果为负数) OF:溢出标志 (补码溢出, 有符号溢出) [2]有两类指令设置条件码而不改变任何其 ...
- JS流程控制语句 多种选择(Switch语句) 当有很多种选项的时候,switch比if else使用更方便。
多种选择(Switch语句) 当有很多种选项的时候,switch比if else使用更方便. 语法: switch(表达式) { case值1: 执行代码块 1 break; case值2: 执行代码 ...
- Java循环控制语句-switch
Java循环控制语句之一switch 不同于其他循环控制语句的特性: switch的英文解释为开关,正如它的解释一样,switch循环的特点就像开关一样,跳到哪一个条件即会出现某一种结果. 写法: s ...
- SQL server学习(三)T-SQL编程、逻辑控制语句和安全模式
T-SQL编程 T-SQL编程与C语言类似,只是语法稍有不同而已,总体思想还是没有变化的.多的就不说了,还是从变量开始. 变量也分为全局变量和局部变量,表示方式稍有不同. 局部变量: 局部变量必须以标 ...
- PHP7语法知识(二):流程控制语句、函数、字符串、数组
流程控制: 一.条件控制语句 1.if条件控制语句: 2.switch分支语句: 二.循环控制语句 1.while循环: 2.do while循环: 3.for循环: 4.foreach循环: 三.跳 ...
- [IOS]《A Swift Tour》翻译(一)
以下翻译内容为原创,转载请注明: 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/3768936.html 碎碎念... Swift是苹果在WWDC刚发 ...
- 【C语言入门教程】3.1 程序的 3 种基本结构
程序设计是一个问题求解的过程,解决问题的步骤可看作是程序的控制结构.简单地说,程序的运行过程就是数据输入.数据处理.数据输出 3 个步骤.其中,数据处理过程是否快捷和准确,主要依赖于程序控制结构的设计 ...
- clang format 官方文档自定义参数介绍(中英文)
官方文档:http://clang.llvm.org/docs/ClangFormatStyleOptions.html 中文 在代码中配置样式 当使用 clang::format::reformat ...
- JSP语法
第3章 JSP语法 [本章专家知识导学] JSP是建立在Java语言基础上的一种Web程序设计语言,具有自己特有的用法和指令.本章首先介绍JSP页面的程序结构,然后讲述JSP程序中经常用到基本的面向 ...
随机推荐
- JSP 禁用脚本设置
JSP 禁用脚本设置: web.xml: <?xml version="1.0" encoding="UTF-8"?> <web-app xm ...
- Atom 编辑器系列视频课程
此课程为 Atom 编辑器系列课程,主要介绍了 Atom 的高效开发技巧以及必备插件. 课程列表 Atom编辑器系列课程 #1 - Atom简介 Atom编辑器系列课程 #2 - 设置简介 Atom编 ...
- 老司机教你下载tumblr上视频和图片的正确姿势
本文面向初学者. 很多同学问我:“我非常想学Python编程,但是找不到兴趣点”. 还有的同学呢,找到了很好的兴趣点,但是无从下手,“玄魂老师,我想下载tumblr上的视频, 怎么下载,Python能 ...
- Android内存泄露---检测工具篇
内存使用是程序开发无法回避的一个问题.如果我们毫不在意肆意使用,总有一天会为此还账,且痛不欲生...所以应当防患于未然,把内存使用细化到平时的每一行代码中. 内存使用概念较大,本篇先讲对已有app如何 ...
- (三)Lua脚本语言入门
又要找工作了,变的忧虑了,唯有学习才让内心变得踏实,今天玩了一下午的王者荣耀,正事都忘了...... 如果认为所谓的毅力是每分每秒的"艰苦忍耐"式的奋斗,那这是一种很不足的心理状态 ...
- 启动activity与使用Intent通信机制解析
我们都知道,一个activity启动另一个activity最简单的方式就是使用startActivity方法: public void startActivity (Intent intent) 但是 ...
- SQL SERVER运维日记--收缩数据库
一个小故事 某天,小王正在和HR妹妹闲聊,正HAPPY时,,突然收到系统告警消息,数据库磁盘被剩余空间500M,OMG,不行,磁盘快满了,要是业务要停了,,那就小王只能删库到跑路了,,, 先检查下,有 ...
- ios 学习动画的套路 (一)
你也肯定喜欢炫酷的动画! 在APP中,动画就是一个点睛之笔!可以给用户增加一些独特的体验感,估计也有许多的和我一样的,看着那些觉得不错的动画,也就只能流口水的孩子,毕竟~不知道从哪里下手去写!会连续的 ...
- 关于post与get请求参数存在特殊字符问题
遇到项目中存在文本编辑框输入特殊字符 比如:# ? & 空格 , 导致后台接受不到参数问题,对可能存在特殊字符的参数进行encodeURIComponent; C#后台接受参数不需要解码 也可 ...
- 简洁、轻量的前端UI框架 - Hbook
Simple, lightweight front-end UI framework Get Start : http://www.bookcss.com Introduce Hbook focus ...