`
阅读更多

分支语句

 

1. 条件语句 if-else ,基本语法形式如下,其中 “[]” 中 的部分可以省略。

 

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. if boolean-expression {  
  2.    
  3. statement1;  
  4.    
  5.    
  6. }  [else if boolean-expression    {  
  7.    
  8. statement2;  
  9.    
  10. }  ] [else  {  
  11. statement3;  
  12.    
  13.    
  14. }  ]  
  15.    

 

实例:

 

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1.    
  2. var number1 = 0;  
  3.   
  4. var number2 = 1;  
  5.    
  6. var max = 0;  
  7.    
  8. if number1 >number2 {  
  9.    
  10. max = number1;  
  11.    
  12. } else if number1 < number2 {  
  13.    
  14. max = number2;  
  15.    
  16. } else {  
  17.    
  18. max = number1;  
  19.    
  20. }  
  21. println("Themaximum is \(max)")  

 

 

2 .多分支语句 switch 它的语法形式如下:

 

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. switch some value to consider {  
  2.    
  3. case value 1:  
  4.    
  5. respond to value 1 case value 2,                value 3:  
  6. respond to value 2 or 3  
  7.   
  8. default:  
  9.    
  10. otherwise, do something else  
  11.    
  12. }  

 

 

 

每个 case 不需要显式地添加 break ,每个 case 至少有 一条语句。

 

可以比较任何类型。

实例1:

 

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. let someCharacter: Character ="e" switch someCharacter {  
  2. case "a", "e", "i","o", "u":  
  3.    
  4. println("\(someCharacter) isa vowel")case "b", "c", "d", "f", "g", "h", "j", "k", "l","m", "n", "p", "q", "r", "s", "t", "v", "w", "x", "y", "z":  
  5. println("\(someCharacter) is a consonant")  
  6.    
  7. default:  
  8.    
  9. println("\(someCharacter)  is not  a  vowel   or  a consonant")  
  10.    
  11. }  
  12.    

 

 

实例2:

 

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. let count = 3_000  
  2.    
  3. let countedThings = "stars inthe Milky Way"varnaturalCount: String  
  4. switch count {  
  5.    
  6. case 0:  
  7.    
  8. naturalCount ="no" case 1...3:  
  9. naturalCount ="a few" case 4...9:  
  10. naturalCount ="several"  
  11.    
  12. case 10...99:  
  13.    
  14. naturalCount ="tens of" case 100...999:  
  15. naturalCount ="hundreds of" case 1000...999_999:  
  16. naturalCount ="thousands of"  
  17.    
  18. default:  
  19.   
  20. naturalCount = "millions and millions of"  
  21.    
  22.    
  23. }  
  24.    
  25. println("There are \(naturalCount) \(countedThings).")  

 

 

 

 

循环语句

 

while语句

 

do-while语句

 

for语句

 

for in语句

while 循环

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. while condition{  
  2.    
  3. statements  
  4.    
  5. }  
  6. vari = 100 varr = 0 vars0 vart = 0  
  7. while i < 1000 {  
  8.   
  9. ri / 100  
  10.    
  11. s=( i - r* 100 ) / 10  
  12.    
  13. ti - r* 100 - s* 10  
  14.    
  15. if( i == r * r* r + s* s *s + t* t * t){  
  16.    
  17. println ( "i = \(i)" )  
  18.    
  19. }  
  20. i++  
  21. }  
  22. do while 循环   
  23. do {  
  24.    
  25. statements  
  26.    
  27. } while condition  
  28. vari = 100 varr = 0 vars0 vart = 0  
  29.   
  30. do      {  
  31.    
  32. ri / 100  
  33.    
  34. s=( i - r* 100 ) / 10  
  35.    
  36. ti - r* 100 - s* 10  
  37.    
  38. if( i == r * r* r + s* s *s + t* t * t){  
  39.  println ("i = \(i)" )  
  40.    
  41. }   
  42. i++  
  43. } while i < 1000  

 

 

for 循环

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. for initialization; condition; increment {  
  2. statements  
  3. }  
  4. vari8 varr = 0 vars0  
  5. forvarj =0; j <=i; j++{  
  6.    
  7. r = j * j  
  8.    
  9. s=j * j * j  
  10.   
  11. println (" 整数为 :\(j) ");  
  12.    
  13. println (" 对应的平方和 :\( r)")  
  14.    
  15. println ( " 对应的立方和 : \( s ) " )  
  16.    
  17. }  

 

 

for in 循环

 

用于遍历集合。

 

1.  遍历范围

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1.    
  2. forindex in1...5{  
  3.    
  4. println( " \(index) times 5 is \(index * 5 )" )  
  5.    
  6. }  

 

 

2.  忽略循环变量

 

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. letbase = 3  
  2.   
  3. letpower = 10 varanswer = 1  
  4. for_ in 1...power {  
  5.    
  6. answer *=base  
  7.    
  8. }  
  9.    
  10. println (" \(base )to the power of \(power )is \(answer ) " )  

 

 

 

 

3.  遍历数组

 

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. letnames =[ "Anna" ,"Alex" , "Brian" ,"Jack"]  
  2.    
  3. forname innames {  
  4.    
  5. println( "Hello, \(name) !" )  
  6.    
  7. }  

 

4.  遍历字典

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1.  letnumberOfLegs =[ "spider" :8 , "ant" :6 , "cat" : 4]  
  2.    
  3. for(animalName, legCount) innumberOfLegs {  
  4.    
  5. println( " \(animalName) s have \(legCount) legs" )  
  6.    
  7. }  

 

 

5 .遍历字符串

 

 

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1.  letnumberOfLegs =[ "spider" :8 , "ant" :6 , "cat" : 4]  
  2.    
  3. for(animalName, legCount) innumberOfLegs {  
  4.    
  5. println( " \(animalName) s have \(legCount) legs" )  
  6.    
  7. }  
  8.  letnumberOfLegs =[ "spider" :8 , "ant" :6 , "cat" : 4]  
  9.    
  10. for(animalName, legCount) innumberOfLegs {  
  11.    
  12. println( " \(animalName) s have \(legCount) legs" )  
  13.    
  14. }  

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1.   

 

1.12.3 跳转语句

 

 •   continue

 •   break

 

•   fallthrough

 

•   return

 

 

 

 

 

1.continue 实例:

 

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. for var i = 0; i < 100; i++ {  
  2.    
  3. if i % 10 == 0 {  
  4.    
  5. continue;  
  6.    
  7. }  
  8.    
  9. println("i = \(i)");  
  10.    
  11. }  

 

2. break 实例:

 

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. for var i = 0; i < 10;i++ {  
  2.    
  3. if i == 3 {  
  4.  break;  
  5.  }  
  6. println("i = \(i)");  
  7. }  
  8.  println("Game Over!");  

 

3. fallthrough 实例:

 

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. let integerToDescribe = 5  
  2.  var description = "Thenumber \(integerToDescribe) is"  
  3.  switchintegerToDescribe {  
  4.  case 2, 3, 5, 7, 11, 13, 17, 19:  
  5.  description += " a prime number, and also"fallthrough  
  6. default:  
  7.  description += " an integer."  
  8. }  
  9.    
  10. println(description)  

Swift交流讨论论坛论坛:http://www.cocoagame.net

欢迎加入Swift技术交流群:362298485

分享到:
评论

相关推荐

    Swift教程:控制流 控制转移语句-break

    `break`关键字在Swift中用于立即终止最内层的循环或switch语句的执行,并将控制权交还给循环或switch语句之后的代码。当你希望在满足某个特定条件时提前结束循环,而不是等待循环自然结束时,`break`就显得非常有用...

    Swift视频教程:控制流 控制转移语句-fallthrough

    在这个"Swift视频教程:控制流 控制转移语句-fallthrough"中,我们将深入探讨`fallthrough`这一特殊的控制转移语句。 `fallthrough`是Swift的一个独特特性,它用于枚举(switch)语句中,使得程序在匹配一个case后...

    Swift视频教程:控制流 控制转移语句-continue

    在这个“Swift视频教程:控制流 控制转移语句-continue”中,我们将深入探讨如何利用`continue`语句来优化循环中的控制流程。 `continue`语句在Swift中用于提前结束当前循环迭代的剩余部分,然后跳到下一个迭代。这...

    Swift视频教程:控制流 标签语句

    在这个视频教程中,我们将深入探讨Swift中的控制流,特别是标签语句这一重要概念。 控制流是编程中的关键部分,它决定了程序执行的顺序。在Swift中,控制流主要包括条件语句(如if、switch)、循环(如for-in、...

    Swift视频教程:控制流 条件语句-if

    在这个"Swift视频教程:控制流 条件语句-if"中,我们将深入探讨如何利用if语句来实现条件判断,以及它们在实际编程中的应用。 首先,让我们了解if语句的基本语法。在Swift中,if语句由一个关键字"if"、一个条件...

    Swift视频教程:控制流 条件语句-switch-元组匹配

    总之,通过学习这个“Swift视频教程:控制流 条件语句-switch-元组匹配”,你将能够熟练掌握如何在Swift中编写条件控制语句,尤其是高效利用`switch`语句和元组匹配来处理复杂的逻辑问题。在实际编程中,这将极大地...

    Swift视频教程:控制流 条件语句-switch-值绑定where筛选

    在本“Swift视频教程:控制流 条件语句-switch-值绑定where筛选”中,我们将深入探讨如何使用Swift中的控制流工具来实现更灵活和精确的逻辑控制。 一、条件语句 条件语句是编程中用于基于不同条件执行不同代码块的...

    Swift视频教程:控制流 条件语句-switch-值绑定

    在Swift中,条件语句是最常用的控制流工具之一,尤其在处理多分支逻辑时,`switch`语句显得尤为强大。本视频教程将深入讲解如何使用`switch`语句以及其独特的值绑定特性。 `switch`语句是一种多路选择结构,它可以...

    Swift的基础教程-介绍了变量和数据类型、运算符、控制语句、函数等 Swift支持面向对象编程,包括类和对象、继承、多态

    Swift提供了多种控制语句,用于控制程序的执行流程。 - **条件语句**:`if`语句用于根据条件决定是否执行某段代码。 - **循环语句**:`for`循环和`while`循环用于重复执行一段代码。 - `for`循环通常用于已知循环...

    Swift视频教程:控制流 条件语句-switch-区间匹配

    在Swift编程语言中,控制流是程序执行顺序的关键部分,它允许我们根据不同的条件执行不同的代码块。在本教程中,我们将深入探讨条件语句,特别是`switch`语句和区间匹配,这是Swift中实现多分支逻辑的重要工具。 ...

    Swift从入门到精通视频教程下载第7章 程序的流程——程序控制结构和语句.zip

    4. **循环控制语句**:`break`、`continue`和`return`语句可以在循环内部改变程序流程。`break`用于立即退出最内层循环,`continue`跳过当前迭代的剩余部分,直接进入下一次迭代,`return`则用于结束函数并返回一个...

    Swift_Apprentice_v3.0 (Swift4 and Xcode9)

    2. **基本控制流** (`03-basic-control-flow`): Swift中的控制流程语句包括条件语句(如if-else)、循环(如for-in和while)以及switch语句,这些都是编写复杂逻辑的关键部分。 3. **字符串处理** (`09-strings`): ...

    The swift programming language (Swift 5.0)

    Swift的语法简洁明了,例如,它的初始化器(Initializer)允许你控制对象的创建过程,而泛型(Generics)则提供了代码复用的能力。此外,可选链(Optional Chaining)简化了处理可能为nil值的操作,避免了常见的“空...

    Swift入门PPT和源码

    Swift支持if语句和switch语句进行条件判断。if语句用于简单的单条件判断,而switch语句则允许基于多个条件执行不同的代码块,更灵活且具有模式匹配功能。 3. **闭包**: 闭包是能够捕获和存储其所在上下文中环境...

    Swift视频教程:switch语句匹配枚举值

    在Swift编程语言中,`switch`语句是一种强大的控制流工具,用于基于不同的情况执行不同的代码块。在本视频教程中,我们将深入探讨如何利用`switch`语句来匹配枚举值,这是Swift中枚举类型(`enum`)的一个重要应用...

    Swift 5.1 官方教程.pdf

    Swift 中的控制流语句包括 `if`、`switch`、`for-in`、`while` 和 `repeat-while` 等。这些语句可以用来控制程序的执行流程,例如 `if score &gt; 90 { print("You passed!") }`。 函数 Swift 中的函数可以使用 `func...

    Swift流程控制之循环语句和判断语句详解

    本文将深入探讨Swift中的循环语句和判断语句,这两种语句是流程控制的核心。 首先,让我们来看看Swift的循环语句。Swift提供了两种基本的for循环:for-in和for-condition-increment。for-in循环适用于遍历数组、...

    Swift教程Swift语言快速入门

    1. **基础语法**:Swift的基础语法简洁明了,包括变量和常量的声明(var和let)、数据类型(Int、Double、String等)、运算符(算术、比较、逻辑等)、控制流(if语句、switch语句、for循环、while循环)。...

    Swift语言教程 :Swift 项目实战

    在学习过程中,你需要掌握变量和常量的声明、数据类型(如Int、String、Bool等)、控制流(如条件语句if-else和switch,循环for-in和while)以及函数的定义和调用。 二、SwiftUI框架 SwiftUI是苹果在2019年推出的新...

    Swift3.0.1文档_The Swift Programming Language

    二、Swift的控制流 1. 条件语句:`if`、`guard`和`switch`用于条件判断。其中,`guard`语句用于早期退出,使代码更加清晰。 2. 循环:`for-in`循环用于遍历集合,`while`循环用于满足特定条件时重复执行代码。 3....

Global site tag (gtag.js) - Google Analytics