简单值 2个月前

编程语言
696
简单值

通常来说,编程语言教程中的第一个程序应该在屏幕上打印“Hello, world”。在 Swift 中,可以用一行代码实现:

print("Hello, world!")

如果你写过 C 或者 Objective-C 代码,那你应该很熟悉这种形式——在 Swift 中,这行代码就是一个完整的程序。你不需要为了输入输出或者字符串处理导入一个单独的库。全局作用域中的代码会被自动当做程序的入口点,所以你也不需要 main() 函数。你同样不需要在每个语句结尾写上分号。

这个教程会通过一系列编程例子来让你对 Swift 有初步了解,如果你有什么不理解的地方也不用担心——任何本章介绍的内容都会在后面的章节中详细讲解到。

简单值

使用 let 来声明常量,使用 var 来声明变量。一个常量的值,在编译的时候,并不需要有明确的值,但是你只能为它赋值一次。这说明你可以用一个常量来命名一个值,一次赋值就可在多个地方使用。

var myVariable =42
myVariable =50
let myConstant =42

常量或者变量的类型必须和你赋给它们的值一样。然而,你不用明确地声明类型。当你通过一个值来声明变量和常量时,编译器会自动推断其类型。在上面的例子中,编译器推断出 myVariable 是一个整数类型,因为它的初始值是整数。

如果初始值没有提供足够的信息(或者没有初始值),那你需要在变量后面声明类型,用冒号分割。

let implicitInteger =70
let implicitDouble =70.0
let explicitDouble: Double=70

练习

创建一个常量,显式指定类型为 Float 并指定初始值为 4。

值永远不会被隐式转换为其他类型。如果你需要把一个值转换成其他类型,请显式转换。

let label ="The width is "
let width =94
let widthLabel = label +String(width)

练习

删除最后一行中的 String,错误提示是什么?

有一种更简单的把值转换成字符串的方法:把值写到括号中,并且在括号之前写一个反斜杠(\)。例如:

let apples =3
let oranges =5
let appleSummary ="I have \(apples) apples."
let fruitSummary ="I have \(apples + oranges) pieces of fruit."

练习

使用 \() 来把一个浮点计算转换成字符串,并加上某人的名字,和他打个招呼。

使用三个双引号(""")来包含多行字符串内容。每行行首的缩进会被去除,只要和结尾引号的缩进相匹配。举个例子:

let quotation ="""
I said "I have \(apples) apples."
And then I said "I have \(apples + oranges) pieces of fruit."
"""

使用方括号 [] 来创建数组和字典,并使用下标或者键(key)来访问元素。最后一个元素后面允许有个逗号。

var shoppingList = ["catfish", "water", "tulips", "blue paint"]
shoppingList[1]="bottle of water"

var occupations = [
"Malcolm":"Captain",
"Kaylee":"Mechanic",
]
occupations["Jayne"]="Public Relations"

数组在添加元素时会自动变大。

shoppingList.append("blue paint")
print(shoppingList)

使用初始化语法来创建一个空数组或者空字典。

let emptyArray: [String] = []
let emptyDictionary: [String:Float] = [:]

如果类型信息可以被推断出来,你可以用 [][:] 来创建空数组和空字典——比如,在给变量赋新值或者给函数传参数的时候。

shoppingList = []
occupations = [:]
image
EchoEcho官方
无论前方如何,请不要后悔与我相遇。
1377
发布数
439
关注者
2222351
累计阅读

热门教程文档

C
14小节
爬虫
6小节
Spring Cloud
8小节
MyBatis
19小节
10.x
88小节