您的位置:首页 > 移动开发 > Swift

《Swift语言基础》之数据类型

2020-03-01 21:32 381 查看

处支持任何语言都支持的整数类型、浮点类型、布尔类型、字符串类型等,还指出一些特殊的类型,如元组类型、可选类型。但是不管什么类型,在Swift中,数据类型名称都是以大写字母开头的。

这里不一 一赘述,挑出一些个人认为有必要的写出来。

1,为了增加数组的可读性,Swift语言增加了下划线(_)来分割数值中数值。比如100000000,很多人能一眼反映出是1亿,但是如果是1_0000_0000就很容易识别了。这里的_不一定要是四个一组的,其实是支持任意组合的,比如下面写法都是合法的。

let value1 = 12_000_000
let value2 = 1_000_000.000_001
var value3:Int = 1_00_000
[/code]

2,类型强转,感觉跟Java一样,不多说

3,类型别名

书中说Swift中的类型别名类似于C/C++中typedef,博主对其了解甚少,这里就一带而过了。至于在Swift中的用法则是这样的:

需要使用typealias关键字,语法如下

typealias 类型别名 = 原始类型

//like this:

typealias NewType = Int32
var newValue:NewType = 123 //定义时NewType和Int32是完全一样的
[/code]

不过个人暂时没有想到其使用场景,懂的人还请说明下。

4,元组(tuples)类型,Swift语言提供的一中新数据类型。

其实元组说白了就是包含多个值的数据类型,比如:

let product = (20,"iphone6",5888)
//println或者print是Swift语言的打印命令相当于C语言里面的printf()或者Java的sysout
println(product) //结果为  (20,"iphone6",5888)
[/code]

那么如何获取一个元组的值呢?其实很简单。

var product = (20,"iphone6",5888)
var (id,name,price) = product //分别将product的三个值非为三个变量id,name和price
println("id=\(id) name=\(name) price=\(price)" ) //其中   \(变量名/常量名) 意思是:将变量名和常量名值插
                                                 //入到字符串中
[/code]

如果只想获取其中某些值的话,其他字段值可以用_来占位,比如

var product = (20,"iphone6",5888)
var (_,name,_) = product 
println("name=\(name) " )
[/code]

其实还有一种更为简单的获取相关元素值的方法,那就是为每一个元素命名,引用的方法和引用对象属性相同。

let product = (30,name:"iphone6",price:5999)
println(product.name)
[/code]

上面这种方法是不是看起来更见通俗易懂呢?

5,可选类型,书中云其主要是为了解决对象变量或者常量为空的情况。但是鄙人目前还有绕明白,就先不忽悠了,各位看官自行百度这里吧。等我懂了再来补上。

// TODO 可选类型的概念
[/code]

 

转载于:https://my.oschina.net/u/1028833/blog/498640

  • 点赞
  • 收藏
  • 分享
  • 文章举报
chilu4048 发布了0 篇原创文章 · 获赞 0 · 访问量 238 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: