swift 一些复杂类型

2015.7.27     晴

前两天由于额头被磕破了,去缝了针,又来了实习通知,所以没有学习ios开发,不知道在这个时间来了实习通知是不是正确的时间,但是这确实让我十分的纠结,有点不明白该如何抉择,所以现在也把这些考虑放下了,不管怎么说,先学习总是没有错的。


数组:

在swift语言中,数据在被存储进入某个数组之前,类型必须明确,且与数组其他元素类型相同,你可以通过显式的类型声明或类型推断来做到这一点。穿件数组的标准格式是:

var emptyArray=[String]()

var ExceptionTypes=["none","warning","error"]   //省略类型的数组声明

数组最正式的声明格式其实是:

var Arrayname=Array<String>()

在他的定义中,可以看到实现了两个版本的subscript(下标访问和区间访问),第一个版本使得我们可以使用安全范围的下标访问数组中对应的元素,第二个版本则是用于获取slice:

subscript (index: Int) ->T 

subscript (subRange: Range<Int>) ->Slice<T>

我们可以给定一个区间,然后数组返回我们一个slice,当我们获取一个slice之后,不管你修改slice还是数组中相同区间的元素,改变都会同步到slice和数组中。值得注意的时,他们只是指向了相同的元素位置,并不是具有相同的引用,毕竟类型不同。但是他们之中任何一个的元素指向发生了变化,这种同步就会被打破。

var BrazilTeamMembers=[String]()

BrazilTeamMembers.append("six")  //添加元素
BrazilTeamMembers.insert("one", atIndex: 0)  //指定位置添加数组元素
BrazilTeamMembers += ["seven"]    //通过+=为数组添加元素
BrazilTeamMembers.isEmpty      //判断数组是否为空,返回bool型
BrazilTeamMembers[1]="Neymar"   //为下标为1的元素赋值为"Neymar"
BrazilTeamMembers.count      //获取数组元素的个数
BrazilTeamMembers.removeAtIndex(2) //删除下标为2的元素
BrazilTeamMembers.removeLast()   //删除数组中最后一个元素
BrazilTeamMembers.removeAll(keepCapacity: true)   //删除数组中所有的元素
println(BrazilTeamMembers)
所以说数组的操作还是很有趣的,我们也可以用+来组合两个相同类型数目。新数组的数据类型会从两个数据类型中推断出来

var addStringArr = ExceptionTypes + BrazilTeamMembers

二维数组的命名:

var mulArr=Array<Array<Int>>()

字典:

字典用于储存无序的数据元素值,它可以储存任何类型的元素,甚至可以将数组作为字典的元素。字典的每个值都有一个唯一的标识符“key”,通过"key"来管理并维护字典中的数据,这种引用机制也被称为"键值对"

创建字典的标准格式:

字典名称={字典关键字}Dictionarys=Dictionary<String,Int>()

和数组一样,字典也有很多操作方法,依然有增查改删。


结构体:

结构体声明:

struct BookInfo {
    var ID:Int=0
    var Name:String="Default"
    var Author:String="Default"
    var RootType:String="Default"
    var SubType:String="Default"
    var Position:String="0-0-0"
}

var ProgramGuide:BookInfo    //调用默认构造器创建一个结构体实例

var BeautyMath=BookInfo(ID: 0021, Name: "The Beauty Math", Author: "JunMu", RootType: "It", SubType: "Math", Position: "E6-3-7-687")
BeautyMath.Name="Jun Wu"



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值