加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

swift流程控制

发布时间:2020-12-14 02:43:31 所属栏目:百科 来源:网络整理
导读://: Playground - noun: a place where people can play import UIKit // 使用 if 和 switch 作为条件控制。使用 for-in 、 for 、 while 、 do-while 作为循环。小括号不是必须的 , 但主 体的大括号是必需的。 let individualScores = [ 75 , 43 ,216)"> 10

//: Playground - noun: a place where people can play


import UIKit


//使用 if switch 作为条件控制。使用 for-in for while do-while 作为循环。小括号不是必须的,但主 体的大括号是必需的。


let individualScores = [75,43,216)"> 103,216)">87,216)"> 12]


var teamScore = 0


for score in individualScores {

if score > 50 {

teamScore += 3

} else {

teamScore += 1

}

}

teamScore

/* if 语句中,条件必须是布尔表达式,这意味着 if score { ... } 是错误的,不能隐含的与0比较。 你可以一起使用 if let 来防止值的丢失。这些值是可选的。可选值可以包含一个值或包含一个 nil 来指定值还

不存在。写一个问号 "?" 在类型后表示值是可选的。*/


var optionalString: String? = "Hello"

optionalString == nil


var optionalName: String? = "John Appleseed"


var greeting = "Hello"


if let name = optionalName {

greeting = "Hello,(name)"

} else {

greeting = "Word"

}

//如果可选值为 nil,条件判断为 false,

//switch 支持多种数据以及多种比较,不限制必须是整数

let vegetable = "red pepper"


switch vegetable {

case "celery":

let vegetableComment = "Add some raisins and make ants on a log."

case "cucumber","watercress":

let vegetableComment = "That would make a goog tea sandwich."

case let x where x.hasSuffix("pepper"):

let vegetableComment = "Is it a spicy (x)?"

default:

let vegetableComment = "Everything tastes goog in soup."

}

//可使用 for-in 来迭代字典中的每个元素,提供一对名字来使用每个键值对。

let interestingNumbers = [

"Prime": [2,216)">3,216)"> 5,216)">7,216)"> 11,216)">13],

"Fibonacci": [1,216)"> 2,216)"> 90,216)">8],

"Square": [4,216)"> 9,216)">16,216)"> 25],

]

var largest = 0

var str: String?


for (kind,numbers) in interestingNumbers {

for number in numbers {

if number > largest {

largest = number

str = kind

}

}

}

largest

str

//使用 while 来重复执行代码块直到条件改变。循环的条件可以放在末尾来确保循环至少执行一次。

var n = 2

while n < 100 {

n = n * 2

}

n


var m = 2

do {

m = m * 2

} while m < 100

m

//你可以在循环中保持一个索引,通过 ".." 来表示索引范围或明确声明一个初始值、条件、增量。这两个循环做相同的 事情:

var firstForLoop = 0


for i in 0..<3 {

firstForLoop += i

}

firstForLoop


var secondForLoop = 0

for var i = 0;i < 3;i++ {

secondForLoop += 1

}

secondForLoop

//使用 ..< 构造范围忽略最高值,而用 ... 构造的范围则包含两个值。

var num1 = var num2 = 1..<4 {

num1++

}

num1

1...4 {

num2++

}

num2

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读