日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Swift中文教程(三)--流程控制

發布時間:2024/1/17 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Swift中文教程(三)--流程控制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Swift中文教程(三)--流程控制 原文:Swift中文教程(三)--流程控制

  Swift用if和switch編寫條件控制語句,用for-in,for,while和do-while編寫循環。條件控制語句和循環語句中,小括號是可選的,但花括號包住這個循環體是必須的:

1 let individualScores = [75, 43, 103, 87, 12] 2 var teamScore = 0 3 for score in individualScores { 4 if score > 50 { 5 teamScore += 3 6 } else { 7 teamScore += 1 8 } 9 } 10 teamScore

  

  If語句

?

  在if語句中,條件必須是布爾值,也就是說,if score { ... }這個條件句是錯誤的,不是一個隱式地與0比較的條件。

  你可以結合if和let來防止這種值的丟失狀況。這些值意味著可選,這種可選值要么包含一個具體的值要么包含一個nil(空)來指示它的值是不存在的。在值的類型后面加上?號來表示它為可選即可:

var optionalString: String? = "Hello" optionalString == nilvar optionalName: String? = "John Appleseed" var greeting = "Hello!" if let name = optionalName {greeting = "Hello, \(name)" }

練習:

將 optionalName 賦值為 nil 。會發生什么?添加一個 else 條件句在 optionalName 為 nil 時設置一個不同的值試試。

  一旦可選值為nil,條件為false時,花括號里的代碼塊將被跳過,否則,可選值將是未封裝的并賦值給一個常量,這會讓未封裝的值在代碼塊作用域中可見。

  

  Switch語句

?

  Switch語句支持任何數據類型而且支持多種比較,不限于整型或相等測試:

1 let vegetable = "red pepper" 2 switch vegetable { 3 case "celery": 4 let vegetableComment = "Add some raisins and make ants on a log." 5 case "cucumber", "watercress": 6 let vegetableComment = "That would make a good tea sandwich." 7 case let x where x.hasSuffix("pepper"): 8 let vegetableComment = "Is it a spicy \(x)?" 9 default: 10 let vegetableComment = "Everything tastes good in soup." 11 }

練習:

移除default語句,看看會報什么錯?

  執行滿足條件的case語句后,程序自動跳出,所以,無需給每個case語句加上break。

  

  For-In語句

?

  使用for-in循環在字典中遍歷時,提供一對名字來使用字典中的每一個名值對(如下例的number--numbers):

1 let interestingNumbers = [ 2 "Prime": [2, 3, 5, 7, 11, 13], 3 "Fibonacci": [1, 1, 2, 3, 5, 8], 4 "Square": [1, 4, 9, 16, 25], 5 ] 6 var largest = 0 7 for (kind, numbers) in interestingNumbers { 8 for number in numbers { 9 if number > largest { 10 largest = number 11 } 12 } 13 } 14 largest

練習:

在上例中,添加一個變量來跟蹤哪一個number是最大的,即最大的值是?

  

  

  While語句

?

  使用while語句來重復執行一個代碼塊直到條件改變。條件可以置于句末以便代碼至少執行一次:

?

1 var n = 2 2 while n < 100 { 3 n = n * 2 4 } 5 n 6 7 var m = 2 8 do { 9 m = m * 2 10 } while m < 100 11 m

?

  For語句

?

  for循環中可以使用索引值,利用..(兩個點)或者明確聲明一個初始值,條件句或增量來限制索引的范圍,下面的兩個循環意思一樣:

1 var firstForLoop = 0 2 for i in 0..3 { 3 firstForLoop += i 4 } 5 firstForLoop 6 7 var secondForLoop = 0 8 for var i = 0; i < 3; ++i { 9 secondForLoop += 1 10 } 11 secondForLoop

  使用?..(兩個點)限制索引的范圍并忽略最高值,而用?...(三個點)?構造的范圍則包含兩個值。

?

謝謝,Swifter-QQ群:362232993,同好者進~?

?

?

?

?

?

?

?

?

posted on 2014-06-04 09:47 NET未來之路 閱讀(...) 評論(...) 編輯 收藏

轉載于:https://www.cnblogs.com/lonelyxmas/p/3767212.html

總結

以上是生活随笔為你收集整理的Swift中文教程(三)--流程控制的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。