温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

第一节 常量和变量 (第二章)

发布时间:2020-07-16 14:09:08 来源:网络 阅读:269 作者:habout632 栏目:移动开发


本文来自于疯子们的开源图书

常量和变量将名称(比如maximumNumberOfLoginAttempts或者welcomeMessage)和特定类型的值(比如数字10或者字符串hello)关联到一起。一个常量的值一旦它被赋值就不能改变了,然而一个变量之后可以被赋予不同的值。

常量和变量的声明

常量和变量在它们使用之前必须声明。使用let关键词声明常量而使用var关键词声明变量。这里有一个例子是用常量和变量来跟踪用户登录的尝试次数。第一节 常量和变量  (第二章)

这个代码可以解读为:“声明一个新的常量maximumNumberOfLoginAttempts,并且给它赋值10.然后,声明一个新的变量currentLoginAttempt,并且给它一个初始值0”

在这个例子中,允许尝试登录的最大次数被声明为一个常量,因为最大值永远不会改变。当前的尝试登录数目被声明为一个变量,因为这个值在每次尝试登录失败之后增加。

你可以在一行中声明多个常量或者变量,使用逗号隔开:

第一节 常量和变量  (第二章)

注意:如果在你的代码中存储一个不会改变的值,总是使用关键字let把它声明为一个常量。存储一个可能会改变的值,请使用变量。

类型注解(Type Annotations)

在你声明常量或者变量的时候,可以提供一个类型注解,来明确常量和变量能够存储何种类型的值。编写一个类型注释将冒号放在常量名或变量名之后,随后是一个空格,紧随其后的是使用类型名称。

这个例子为一个叫做welcomeMessage的变量提供了一个类型注释,来指出这个变量能存储字符串。

第一节 常量和变量  (第二章)

在声明处的冒号表示是什么类型的,所以上面的代码可以解读为:“声明一个叫welcomeMessage的字符串类型的变量”。“of type string”的词组表示“能够存储任意字符串值”。你可以把它理解为一个容器,可以承装任意类型的东西。

现在变量welcomeMessage能够被设置为任意的字符串值而不会有错误的。

第一节 常量和变量  (第二章)

注意:

在实践中,很少会需要添加类型注解的。如果在定义常量或者变量时,提供初始值,Swift几乎总是能够推断出那个常量或变量所使用的类型,在“类型安全检查和类型推断”里有详细的描述。在上面的welcomeMessage的例子中,没有提供初始值,所以welcomeMessage变量的类型是经过类型注释d的,而不是从初始值推断的。

常量和变量的命名

你几乎可以使用任何字符为常量和变量命名,包括Unicode字符:

第一节 常量和变量  (第二章)

常量和变量名字中不能包含数学符号,箭头,私人用的(或者无效的)Unicode编码,或者是类似于线条或者方块似的字符。它们也不能以数字开头,但是数字可以包含在名字的其余部分中。

当你已经声明了某种类型的常量或变量,你不能用同样的名字再次声明它,或者用它来存储一个不同类型的值。你也不能把一个常量变为一个变量,或者把一个变量变为常量。

注意:

如果你想使用Swift保留的关键字作为常量或者变量的名字的话,你可以在关键字的两端加上反勾号(`,键盘左上角的),这样你就可以把它作为名字使用了。不过,你应该避免使用关键字来命名,除非你实在没有选择了。

你可以把另外一个类型兼容的值赋给一个已存在的变量。在这个例子中,friendlyWelcome的值从"Hello"变为"Bonjour!":

第一节 常量和变量  (第二章)

不像变量,一个常量的值一旦被设置就不能改变。尝试这样做的话,编译的时候,你的代码会报告一个错误:第一节 常量和变量  (第二章)

打印一下常量和变量

你可以使用println函数来打印常量或变量的当前值:

第一节 常量和变量  (第二章)

全局函数println将结果紧跟一个换行符,打印到适合的输出设备上面。比如,你在使用Xcode,println就会将结果打印在Xcode的控制台面板当中。(另外一个函数,print,执行同样的任务。只不过没有在打印结果上面加上换行符)。

println函数可以打印任何你传递给他的字符串值:

第一节 常量和变量  (第二章)

println函数能够打印更多复杂的日志信息,就像Cocoa的NSLog函数一样。这些信息可以包含常量和变量的当前值。

Swift将常量或者变量作为占位符插入到字符串当中,之后就用那个常量或变量的当前值来替换它,这就是所谓的字符串内嵌(String Interpolation)。用圆括号包住名字并且在圆括号之前加上反斜 杠(\)。第一节 常量和变量  (第二章)

注意:

使用字符内嵌的相关描述都在“字符内嵌”当中。


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI