Swift的第一步
SwiftUI是一个强大的框架,可为iOS,macOS,tvOS甚至watchOS生成用户交互应用程序。但是,如果没有编程语言就无法构建软件,因此SwiftUI背后就是Swift本身——
正如马克·吐温(Mark Twain)所说,“成功的秘诀就是开始。”好了,您现在就开始,因此我们将深入研究Swift中的变量,常量和简单数据类型。
今天,您有8个一分钟的视频可供观看。观看完每个视频后,我们会进行一次简短的测试,以帮助您了解所教的内容。(PS: 需要科学上网)
1. 变量 Variables – test
启动Xcode时,它将询问您要做什么,我希望您选择"Get Started with a Playground''——这是一个沙箱,您可以在其中输入Swift代码并查看即时结果。
默认为iOS的空白playground,这很好,因此请单击“下一步”,然后单击“创建”将其保存在桌面上。
在本视频中,我想向您介绍变量,在这些变量中可以存储程序数据。它们之所以称为变量是因为它们可以变化——您可以自由更改其值。Playground从为我们创建变量的一行代码开始:
var str = "Hello, playground"
这将创建一个名为str的新变量,其值为"Hello, playground"。在playground的右侧,您可以在输出区域中看到"Hello, playground" ——这是Xcode,向我们显示了已设置的值。
因为str
是一个变量,所以我们可以更改它:
str = "Goodbye"
我们第二次不需要var
,因为变量已经创建,我们只是在更改它。
2. 字符串和整数 Strings and integers – test
Swift是一种类型安全的语言,这意味着每个变量都必须属于一种特定的类型。Xcode为我们创建的str
变量包含一串字母拼写为"Hello, playground"的字母,因此Swift将其分配为String
类型。
另一方面,如果我们想存储某人的年龄,则可以创建如下变量:
var age = 38
它包含一个整数,因此Swift分配了类型Int
——“ 整数(integer)”的缩写。
如果您有大量数字,Swift可以让您使用下划线作为数千个分隔符——它们不会更改数字,但它们确实使阅读更容易。例如:
var population = 8_000_000
字符串和整数是不同的类型,不能混用。因此,虽然可以安全地将str
更改为“Goodbye”,但我不能将其更改为38,因为那是Int
而非String
。
3. 多行字符串 Multi-line strings – test
标准Swift字符串使用双引号,但您不能在其中包含换行符。
如果要使用多行字符串,则需要稍微不同的语法:以三个双引号开头和结尾,如下所示:
var str1 = """
This goes
over multiple
lines
"""
Swift对于如何写这些引号非常特别:开头和结尾三元组"""
必须单独一行,但是开头和结尾的换行符不会包含在最终字符串中。
如果您只想让多行字符串整齐地格式化代码,并且不希望这些换行符实际出现在字符串中,请在每行末尾加\
,(打印出来不会换行,还是一行)如下所示:
var str2 = """
This goes \
over multiple \
lines
"""
4. 双精度浮点数和布尔值 Doubles and booleans – test
Swift中的其他两种基本数据类型是double
和boolean
,您会经常使用它们。
“Double”是“双精度浮点数(double-precision floating-point number)”的缩写,它表示分数值,例如38.1或3.141592654。
每当您创建带分数的变量时,Swift都会自动为该变量赋予Double
类型。例如:
var pi = 3.141
双精度数与整数不同,您不能将它们混合在一起。
至于布尔值booleans
,它们要简单得多:它们只持有true
或false
,Swift会自动将boolean
类型分配给任何分配了true
或false
作为其值的变量。比如:
var awesome = true
5. 字符串插值 String interpolation – test
您已经了解了如何直接在代码中键入字符串的值,但是Swift还具有称为字符串插值的功能——可以在字符串中放置变量以使其更有用的功能。
您可以在字符串中放置任何类型的变量——所有您需要做的就是写一个反斜杠\
,然后在括号中加上变量名。例如:
var score = 85
var str = "Your score was \(score)"
如您在playground输出中所见,将str
变量设置为“Your score was 85”。
您可以根据需要多次执行此操作,如果需要,可以使用字符串制作字符串:
var results = "The test results are here: \(str)"
正如您稍后将看到的那样,字符串插值不仅限于放置变量——您实际上可以在其中运行代码。
6. 常量 Constants – test
我已经说过,变量之所以具有该名称,是因为它们的值可以随时间变化,这通常很有用。但是,很多时候您只想设置一个值而从不更改它,因此我们可以使用关键字let
替代var
。
let
关键字创建常量,这些常量是可以一次设置且永不再设置的值。例如:
let taylor = "swift"
如果您尝试更改它,Xcode将拒绝运行您的代码。这是一种安全形式:使用常量时,您不能再偶然更改某些内容。
编写自己的Swift代码时,除非特别想更改值,否则应始终使用let
。实际上,如果您使用var
且没有更改变量,那么Xcode会警告您。
7. 类型注释 Type annotations – test
Swift会根据创建时给定的值为每个变量和常量分配类型。因此,当您编写这样的代码时,Swift可以看到它包含一个字符串:
let str = "Hello, playground"
这将使str
成为字符串,因此以后您将无法尝试为其分配整数或布尔值。这称为类型推断(type inference):Swift能够根据创建方式来推断事物的类型。
如果需要,您可以明确说明数据的类型,而不必依赖Swift的类型推断,如下所示:
let album: String = "Reputation"
let year: Int = 1989
let height: Double = 1.78
let taylorRocks: Bool = true
请注意,布尔值具有短类型名称Bool
,就像整数具有短类型名称Int
一样。
8. 简单类型: 总结 Simple types: Summary – test
您已经完成了本系列第一部分的结尾,因此让我们进行总结。
1、您可以使用
var
来创建变量,并使用let
来创建常量。最好尽可能多地使用常量。
2、字符串以双引号开头和结尾,但是如果希望它们跨多行运行,则应使用三组双引号。
3、整数保存整数,双精度数保留小数,布尔值保留真或假。
4、字符串插值允许您从其他变量和常量创建字符串,并将其值放在字符串中。
5、Swift使用类型推断为每个变量或常量分配类型,但是您可以根据需要提供显式类型。
我知道,我都知道:继续观看更多视频和进行更多测试的诱惑力很强,但请记住:不要着急!每天要做一个小时,比起彼此之间有很大差距的工作块要好得多。
完成后,别忘了告诉别人您的进度。是的,这只是第一天,但是当事情变得更加艰难时,您现在获得的动力越多,您将能够越发努力!
提醒:我有一个免费的iOS应用程序,可以帮助您直接在iPhone和iPad上练习Swift。它包含与上述相同的课程和测试,以及更多的奖励活动。我是否提到它是免费的?在这里下载。
赏我一个赞吧~~~