iOS开发第2部分
Swift变量,常量和文字
在本文中,您将学习Swift编程中的变量,常量,文字及其使用案例。
目录
1)什么是变量?
- 1.1)如何声明变量?
- 1.2)如何为变量赋值?
- 1.3)类型推断变量
- 1.4)修改变量的值
2)什么是常数?
- 2.1)如何声明常量?
- 2.2)如何给常量赋值?
- 2.3)类型推断常数
- 2.4)修改常数值(不允许)
3)什么是文字?
- 3.1)文字类型
- 3.2)整数文字
- 3.3)字符串和字符文字
- 3.4)浮点文字
- 3.5)布尔文字
4)变量和常量的规则和最佳实践
1)什么是变量?
在编程中,变量用于将数据存储在内存中 ,可在整个程序中使用 。
必须为每个变量赋予唯一的名称,称为identifier 。
将变量视为保存信息的容器很有帮助, 以后可以更改这些信息。
从技术上讲,您可以将变量视为用于在其中存储一些书的书包, 以后可以将这些书替换为其他书。
1.1)如何在Swift中声明变量?
在Swift中,我们使用var关键字声明一个变量。
例:
var strName:String
打印(strName)
我们已经声明了一个名为strName的String
类型的变量,这意味着它只能容纳字符串值。
如果您尝试在Playground中运行以上代码, 则会给我们带来编译时错误 ( 在初始化之前使用了变量 ),因为它不存储/包含任何值。
1.2)如何在Swift中为变量赋值?
您可以使用赋值运算符 (=)在变量中赋值 。
示例1:声明并为变量分配值
var strName:String
strName = "var strName:String
iOS开发”
strName = "
print(strName)
要么
您还可以将值inline分配为
var strName:String = "
iOS开发"
print(strName)"
print(strName)
运行该程序时,输出为:
iOS开发
变量strName现在包含值“ iOS Development”。
1.3)类型推断变量
由于Swift是一种类型推断语言 ,因此它可以自动推断(知道)“ iOS Development”是
String
并将strName声明为String
。 因此,您甚至可以将声明中的类型(:String)
删除为:
示例2:在Swift中类型推断的变量
var strName = "iOS
开发"
print(strName)"
print(strName)
1.4)修改变量的值
由于strName是一个变量,因此您也可以通过简单地使用赋值运算符来更改其值 ,而无需使用
var
关键字,例如:
示例3:更改变量的值
var strName = "iOS
开发"
// Assigning a new value to siteName
strName = "// Assigning a new value to siteName
雨燕语言”
strName = "
print(strName)
运行该程序时,输出为:
迅捷语言
2)什么是常数?
常量是 变量的 一种特殊 类型,其值不能更改。 将常量视为保存了以后无法更改的信息的容器是有帮助的。
从技术上讲,您可以将常量视为用于存储某些书籍的书包,而将这些书放入书包中就无法替换。
2.1)如何在Swift中声明一个常量?
在Swift中,我们使用
let
关键字声明一个变量。
例:
let strName:String
print(strName)
我们已经声明了一个名为strName的常量,类型为String
。
如果您尝试运行以上代码, 则会给我们带来编译时错误 (初始化之前使用常量),因为它不包含/保留任何值。
2.2)如何在Swift中为常量分配值?
您可以使用赋值 运算符(=)在与变量相同的常量中赋值 。
示例:声明值并将其分配给常量
要么
您还可以将值inline分配为
let strName:String = "iOS Development"
运行该程序时,输出为:
iOS Development
现在,常量siteName包含/持有“ iOS Development
”值。
2.3)类型推断常数
像变量一样,可以从声明中删除类型(
:String
):
示例:Swift中类型推断的常量
let strName = "iOS Development"
print(strName)
运行该程序时,输出为:
iOS Development
但是与变量不同,您不能更改常量的值。 所以,你不能做某事
2.4)更改常量的值(不允许)\
例如 :
让strName =“ ios Developer”
strName =“快捷语言” //编译时错误
打印(strName)
上面的陈述给我们带来了一个错误,因为正如我们所说的,一旦存储了数据,常量的值就无法更改 。 这是变量和常量之间的关键区别。
3)什么是文字?
文字是直接出现在源代码中的值。
它可以是 数字 , 字符 或 字符串 等。
例如:“ Hello,World ”, 12,23.0 , “ C” 是 文字的 简单 示例 。
文字常用于初始化变量或常量(将值分配给它们)。
例如:
让siteName =“ iOS开发”
在上面的表达式中,siteName是变量,而“ iOS Development”是文字。
3.1)Swift中文字的类型
整数文字
它表示十进制,二进制,八进制或十六进制值。 它有四种类型。
二进制文字
- 代表二进制值。
- 以
0b
开头。
八进制字面量
- 代表八进制值。
- 以
0o
开头。
十六进制文字
- 代表十六进制值。
- 以
0x
。
十进制字面量
- 代表十进制值。
- 一无所有。 您在整数文字中声明的所有内容均为十进制类型。
3.2)整数文字
示例:如何在Swift中使用整数文字?
let binaryNumber = 0b11111111
print(binaryNumber)
print(1231)
运行该程序时,输出为:
255
1231
在上面的程序中,有两个整数文字0b11111111
(二进制文字)和1231
(十进制文字)。 11111111
的十进制值为255 ,因此print(binaryNumber)
语句在屏幕上输出255。
同样, print(1231)
在控制台中输出十进制值255 。
3.3)字符串和字符文字
字符串文字是 由 双引号引起 来的 一系列字符 &字符文字是 由 双引号引起 来的 单个字符 。
示例:如何在Swift中使用字符串和字符文字?
let someCharacter:Character = "C"
let someString:String = "Swift is awesome"
在上述程序中, "C"
是字符文字 &
"Swift is awesome"
是一个字符串文字 。
3.4)浮点文字
它用于初始化数据类型为float
和double
变量。
它可以有两种类型:
1个小数:
2十六进制:
小数:
它可以具有可选的指数,由大写或小写e表示。 对于指数为exp的十进制数字,基数乘以10exp:
示例:如何在Swift中使用十进制文字?
let someFloat = 12.23
let someAnotherFloat = 3.14e2
print(someFloat)
print(someAnotherFloat)
运行该程序时,输出为:
12.23
314.0
在上面的程序12.23
和3.14e2
是浮点文字。 3.14e2
用指数表示,等于3.14 * 102 。
十六进制:
十六进制浮点数必须具有一个由大写或小写p表示的指数。对于具有exp指数的十六进制数,基数乘以2exp:
示例:如何在Swift中使用十六进制文字?
let someFloat = 0xFp10
let someAnotherFloat = 0xFp-12
print(someFloat)
print(someAnotherFloat)
运行该程序时,输出为:
15360.0
0.003662109375
在上面的程序中, 0xFp10
和0xFp-12
是浮点文字。 0xFp10
用指数表示,相当于15 * 210(F表示为十进制的15)。 因此, print(someFloat)
在屏幕上输出15360.0。
同样, 0xFp-12
等于15 * 2-12。 因此, print(someAnotherFloat)
在屏幕上输出0.003662109375。
3.4)布尔文字
快速有两个布尔文字。 他们是
true
false .
示例:如何在Swift中使用布尔文字?
let result:Bool = false
在以上程序中, false
是分配给常量结果的布尔文字。
4)变量和常量的规则和最佳实践
- 选择一个有意义的名称。 例如, var name比var n更有意义。
- 使用camelCase表示法声明变量或常量。 CamelCase表示法以小写字母开头。
例如:
var studentName
让学生年龄
让地址 - 您也可以定义变量和常量而无需对其进行标记。 不使用名称标记意味着您将不在程序中使用它。 在许多情况下,您想创建一个未使用的变量。 在这种情况下,您可以将_占位符用作:
var _ =“ Apple.com” //已初始化但未存储在变量中的字符串
让_ =“ Apple.com”
甚至这是有效的
_ =“ Apple.com” - 如果只需要设置一次值,而无需在程序中再次更改它,则使用常量。 但是,如果以后需要更改它,请使用变量。
- 常量和变量名称不能包含空格字符,数学符号,箭头,专用(或无效)的Unicode代码点或线条和框形图字符。 它们也不能以数字开头,尽管数字可能包含在名称中的其他位置。
var 12 =“ Apple.com” //给出编译错误:预期模式
var @hello =“ Hello” //给出编译错误:预期模式
感谢您的帮助。 请提出任何疑问,意见或建议,以供以后发表。 感谢您的阅读! 📚