简单记录学习Swift的笔记
let
来声明常量,使用var
来声明变量。例如
let label = "The width is" let width = 94 let widthLabel = label + String(width)
let firstWord = "Lin" let secondWord = "i love \(firstWord)"
var shoppingList = ["catfish", "water", "tulips", "blue paint"] shoppingList[1] var occupations = [ "Malcolm": "Captain", "Kaylee": "Mechanic", ] occupations["Jayne"] = "Public Relations"
let emptyArray = [String]() let emptyDictionary = [String: String]()
[]
和[:]
来创建空数组和空字典——就像你声明变量或者给函数传参数的时候一样。shoppingList = [] occupations = [:]
if
和switch
来进行条件操作,使用for-in
、for
、while
和repeat-while
来进行循环。let individualScores = [75, 43, 103, 87, 12] var teamScore = 0 for score in individualScores { if score > 50 { teamScore += 3 } else { teamScore += 1 } } print(teamScore)
if
语句中,条件必须是一个布尔表达式if
和let
来处理值缺失的情况。这些值可由可选值来代表。一个可选的值是一个具体的值或者是nil
以表示值缺失。在类型后面加一个问号来标记这个变量的值是可选的。var optionalString: String? = "Hello" print(optionalString == nil) var optionalName: String? = "Lin" var greeting = "Hello!" optionalName = nil if optionalName == nil { greeting = "Lix love Lin ?" }else{ let name = optionalName greeting = "\(name) love Lix ?" }
nil
,条件会判断为false
,大括号中的代码会被跳过。如果不是nil
,会将值赋给let
后面的常量,这样代码块中就可以使用这个值了。??
操作符来提供一个默认值。如果可选值缺失的话,可以使用默认值来代替。let nickName: String? = "球球 ?" let fullName: String? = "LinHong" let informalGreeting = "Hi \(nickName ?? fullName)"
switch
支持任意类型的数据以及各种比较操作——不仅仅是整数以及测试相等。let sport = "basketball" switch sport { case "football": print("this is the first sport") case "running": print("Lin was running everyday") case let x where x.hasSuffix("ball"): print("Lix play \(sport) everyday") default: print("keep moving") }
switch
中匹配到的子句之后,程序会退出switch
语句,并不会继续向下运行,所以不需要在每个子句结尾写break
。for-in
来遍历字典,需要两个变量来表示每个键值对。字典是一个无序的集合,所以他们的键和值以任意顺序迭代结束。let interestingNumbers = [ "Prime": [2,3,5,7,11], "Fibonacci": [1,1,2,3,5,8,13], "Square": [1,4,9,16] ] var largest = 0 var numberClass = "number" for (kind, numbers) in interestingNumbers { for number in numbers { if number > largest { largest = number numberClass = kind } } } print(largest) print(numberClass)
while
来重复运行一段代码直到不满足条件。循环条件也可以在结尾,保证能至少循环一次。var n = 2 while n < 100 { n = n * 2 } print(n) var m = 2 repeat { m = m * 2 } while m < 100 //循环条件可以在结尾,至少保证循环一次 print(m)
..<
来表示范围。var total = 0 for i in 0..<4 { total += i } print(total)
..<
创建的范围不包含上界,如果想包含的话需要使用...
。var total = 0 for i in 0...100 { total += i } print(total)
本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。
我来说两句