swift 基本类型
来源:互联网 发布:知乎 三十岁 编辑:程序博客网 时间:2024/05/16 07:23
Swift是一门开发iOS,macOS,watchOS和TVOS应用的语言,然而,如果你有c或者oc开发经验的话,你会发现swift的很多内容都是你熟悉的。
swift包含了c和oc上所有基础数据类型,int表示整数型值;double和float表示浮点型值;BOOL是布尔型值;string是文本型数据。swift还提供了三个基本的集合类型,Array,set和Dictionary。
就像c语言一样,swift使用变量来进行存储并通过变量名来关联值。在swift中,广泛的使用着值不可变的变量,他们就是常量,而且比c语言的常量更强大。在swift中,如果你要处理的值不需要改变,那使用常量可以让你的代码更加安全并且更清晰的表达你的意图。
除了我们熟悉的类型,swift还增加了oc中没有的高阶数据类型比如元祖。元祖可以让你创建或者传递一组数据,比如作为函数的返回值,你可以用一个元祖可以返回多个值。
swift还增加了可选类型,用于处理值缺失的情况。可选表示“那有一个值,并且它等于x”或者“那没有值”。可选有点像在oc中使用nil,但是他可以用在任何类型上,不仅仅是类,可选类型比oc中的nil指针更加安全也更具有表现力,他是swift许多强大特性的重要组成部分。
swift是一门类型安全的语言,这意味着swift可以让你清除的知道值的类型。如果你的代码期望得到一个string,类型安全会阻止你不小心传入一个int。同样的如果你的大吗期望得到一个string,类型安全会阻止你意外传入一个可选的string。类型安全可以在帮助你的开发阶段尽早的发现并修正错误。
常量和变量
常量和变量把一个名字和一个指定类型的值关联起来。常量的值一旦设定就不能改变,而变量的值可以所以更改。
声明常量和变量
常量和变量必须在使用前声明,用let来声明常量,用var来声明变量。
let x = 10var y = 0
类型标注
当你声明常量或者变量的时候可以加上类型标注,说明常量或者变量中药存储的值的类型。如果要添加类型标注,需要在常量或者变量名后面加上一个冒号和空格,然后加上类型名称。
这个例子给message变量添加了类型标注,表示这个变量可以存储string类型的值:
var welcome: String声明中的冒号代表着“是...类型”,所以这行代码可以被理解为:
“声明一个类型为string,名字为welcome的变量”
“类型为string”的意思是“可以存储任意string类型的值”
注释
swift中的注释与c语言的注释非常相似。单行注释以双正斜杠//最为起始标记。
也可以进行多行注释,其起始标记为单个正斜杠后跟着一个星号/*,终止标记为一个星号后跟随单个正斜杠*/。
与c语言多行注释不同,swift的多行注释可以嵌套在其他的多行注释之中。你可以先生成一个多行注释块,然后在这个注释块中再嵌套成第二个多行注释。终止注释时先插入第二个注释块的终止标记,然后再插入第一个注释块的终止标记。通过运用嵌套多行注释,可以快速方便的注释掉一大段代码。
分号
与大部分编程语言不同,swift并不强制要求你在每条语句的结尾处使用分号,当然,可以按照习惯添加分号。有一种情况下必须要用分号,即打算在同一行内写多条独立的语句。
类型别名
类型别名就是给现有的类型定义另一个名字。你可以使用typealias关键字来定义类型别名。当你想要给现有的类型起一个更有意义的名字时,类型别名非常有用。假设你正在处理特定长度的外部资源的数据:
typealias AudioSample = uint16
元组
元组把多个值组合成一个复合值。元组内的值可以使任意类型,并不要求是相同类型。
下面这个例子中,(404,"Not Found")是一个描述http状态码的元组。http状态吗是当你请求网页的时候web服务器返回的特殊值。如果你请求的网页不存在就会返回一个404 Not Found状态码。
let http404Error = (404,"Not Found")(404,"Not Found")元组把一个int值和一个string值组合起来表示http状态吗的两个部分:一个数字和一个人类可读的表述。这个元组可以被描述为“一个类型为(int,string)的元组”。
可以将一个元组的内容分解成单独的常量和变量,然后你就可以正常使用它们了:
let (statusCode,statusMessage) = http404Errorprint("\(statusCode)")print("\(statusMessage)")如果只需要一部分元组值,分解的时候可以把要忽略的部分用下划线(_)标记:
let (justTheStatusCode,_) = http404Error此外,还可以通过下标来访问元组中的单个元素,下标从零开始:
print("\(http404Error.0)")print("\(http404Error.1)")可以在定义元组的时候给单个元素命名:
let http200Status = (statusCode:200,description:"ok")给元组中的元素命名后,可以通过名字来获取这些元素的值:
print("\(http200Status.statusCode)")print("\(http200Status.description)")作为函数返回值时,元组非常有用。一个用来获取网页的函数可能会返回一个(int,string)元组来描述是否获取成功。和只能返回一个类型的值比较起来,一个包含两个不同类型值的元组可以让函数的返回信息更有用。
取自《the swift programming language》中文版
0 0
- Swift基本类型
- Swift教程-基本类型
- 初见swift--基本类型
- swift 基本类型
- Swift入门教程:基本类型01
- Swift 基本运算符和集合类型
- swift 2.0 基本数据类型 强转类型
- Swift快速入门(一)基本类型
- 跟着洲洲哥一块学习Swift- 基本类型
- swift的简单运用 基本类型-组合类型
- 如何在swift中自定义基本类型Bool
- swift-集合类型01-数组的基本操作
- swift-集合类型02-字典的基本操作
- swift基本语法(总结提炼版)之003 Swift类型转换
- swift基本语法(总结提炼版)之011 swift 之函数类型
- Swift学习笔记2——基本类型和基本运算
- 初窥Swift-01-(基本输出,值类型,字典,数组)
- 黑马程序员——Swift学习笔记:声明与基本类型
- Ubuntu系统下apt-apt 相关命令总结
- 用SPSS进行多变量数据分析
- 1. Ubuntu下OpenGL程序
- 使用JDK1.7 eclipse报错 Android requires compiler compliance level 5.0 or 6.0.
- jq插件写法
- swift 基本类型
- 第三章 MAD配置文件
- Android上hook AMS和PMS
- 请问 Android http上传文件 可以断点续传么 如果可以怎么实现 有第三方的插件么 谢谢
- 6.《深入理解Java虚拟机》HotSpot 的算法实现
- 高手求组!数据库和listview相关
- java中如何使用try catch
- Android中viewgroup中控件置顶问题
- # android.content.res.Resources$NotFoundException: String resource ID #0x0