一、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的更多相关文章

  1. 控制语句(if-else+循环+switch)汇编规则

    [1]说说条件码 最常用的的条件码有: CF:进位标志 (无符号溢出) ZF:零标志 SF:符号标志(结果为负数) OF:溢出标志 (补码溢出, 有符号溢出) [2]有两类指令设置条件码而不改变任何其 ...

  2. JS流程控制语句 多种选择(Switch语句) 当有很多种选项的时候,switch比if else使用更方便。

    多种选择(Switch语句) 当有很多种选项的时候,switch比if else使用更方便. 语法: switch(表达式) { case值1: 执行代码块 1 break; case值2: 执行代码 ...

  3. Java循环控制语句-switch

    Java循环控制语句之一switch 不同于其他循环控制语句的特性: switch的英文解释为开关,正如它的解释一样,switch循环的特点就像开关一样,跳到哪一个条件即会出现某一种结果. 写法: s ...

  4. SQL server学习(三)T-SQL编程、逻辑控制语句和安全模式

    T-SQL编程 T-SQL编程与C语言类似,只是语法稍有不同而已,总体思想还是没有变化的.多的就不说了,还是从变量开始. 变量也分为全局变量和局部变量,表示方式稍有不同. 局部变量: 局部变量必须以标 ...

  5. PHP7语法知识(二):流程控制语句、函数、字符串、数组

    流程控制: 一.条件控制语句 1.if条件控制语句: 2.switch分支语句: 二.循环控制语句 1.while循环: 2.do while循环: 3.for循环: 4.foreach循环: 三.跳 ...

  6. [IOS]《A Swift Tour》翻译(一)

    以下翻译内容为原创,转载请注明: 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/3768936.html 碎碎念... Swift是苹果在WWDC刚发 ...

  7. 【C语言入门教程】3.1 程序的 3 种基本结构

    程序设计是一个问题求解的过程,解决问题的步骤可看作是程序的控制结构.简单地说,程序的运行过程就是数据输入.数据处理.数据输出 3 个步骤.其中,数据处理过程是否快捷和准确,主要依赖于程序控制结构的设计 ...

  8. clang format 官方文档自定义参数介绍(中英文)

    官方文档:http://clang.llvm.org/docs/ClangFormatStyleOptions.html 中文 在代码中配置样式 当使用 clang::format::reformat ...

  9. JSP语法

    第3章  JSP语法 [本章专家知识导学] JSP是建立在Java语言基础上的一种Web程序设计语言,具有自己特有的用法和指令.本章首先介绍JSP页面的程序结构,然后讲述JSP程序中经常用到基本的面向 ...

随机推荐

  1. C语言中strcpy,strcmp,strlen,strcat函数原型

    //strcat(dest,src)把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0' char *strcat(char * strDest, const char ...

  2. HTML 脚本

    JavaScript 使 HTML 页面具有更强的动态和交互性. 在线实例 插入一段脚本如何将脚本插入 HTML 文档. 使用 <noscript> 标签如何应对不支持脚本或禁用脚本的浏览 ...

  3. 内存快照排查OOM,加密时错误方法指定provider方式错误引起的OOM

    写在前面: 最近开始总结内存方面的东西,已经总结以前遇到的一些内存案例分享下,接下来还有几篇,然后是进程/线程相关的,逐渐形成我的知识体系树 如果你有兴趣,可以文章末尾的公众号二维码一起梳理这些信息. ...

  4. 制作一个功能丰富的Android天气App

    简易天气是一个基于和风天气数据采用MD设计的Android天气App.目前的版本采用传统的MVC模式构建.通过丰富多彩的页面为用户提供日常所需的天气资讯. 项目说明 项目放在github上面 地址是: ...

  5. 《JAVASCRIPT高级程序设计》事件委托和模拟事件

    由于事件处理程序可以为现代web应用提供交互能力,因此许多开发人员不分青红皂白向页面中添加大量的处理程序:这在某些语言中不会导致问题,但是在javascript,事件处理程序数量直接关系到页面的整体运 ...

  6. [html5] 学习笔记-html5增强的页面元素

    在 HTML5 中,不仅增加了很多表单中的元素,同时也增加和改良了可以应用在整个页面中的元素.重点包含 figure.figcaption.details.summary.mark.progress. ...

  7. CSS实现的几款不错的菜单栏

    前言 自从做了智慧城市这个项目之后,我一个做后端的开发者,瞬间转为前端开发,不过我还是很喜欢前端的.前端那些事,其实蛮有意思的,HTML实现的是静态的,使用ajax之后就可以和数据库交互了,加上js和 ...

  8. 微信小程序 JS动态修改样式

    微信小程序这个坑啊,js动态修改样式,我们并不能用js或者jq 轻轻松松一行代码搞定.或者用removeClass addClass 来修改样式. 以下是一种动态修改样式的方法,原理是绑定数据,然后动 ...

  9. 真机测试错误“The application could not be verified”

    真机测试错误"The application could not be verified" 真机测试的时候报错:"The application could not be ...

  10. HDU 3785 寻找大富翁

    寻找大富翁 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...