跟着洲洲哥一块学习Swift-数组

#数组

Swift语言里的数组和字典中存储的数据值类型必须明确。 这意味着我们不能把不正确的数据类型插入其中。 同时这也说明我们完全可以对获取出的值类型非常自信。 Swift对显式类型集合的使用确保了我们的代码对工作所需要的类型非常清楚,也让我们在开发中可以早早地找到任何的类型不匹配错误。

数组使用有序列表存储相同类型的多重数据。相同的值可以多次出现在一个数组的不同位置中。

Swift数组对存储数据有具体要求。 不同于 Objective-C的NSArray和NSMutableArray类,他们可以存储任何类型的实例而且不提供他们返回对象的任何本质信息。 在 Swift 中,数据值在被存储进入某个数组之前类型必须明确,方法是通过显式的类型标注或类型推断,而且不是必须是class类型。例如: 如果我们创建了一个Int值类型的数组,我们不能往其中插入任何不是Int类型的数据。 Swift 中的数组是类型安全的,并且它们中包含的类型必须明确。

数组的简单语法
写 Swift 数组应该遵循像Array这样的形式,其中sometype是这个数组中唯一允许存在的数据类型。 我们也可以使用像SomeType[]这样的简单语法。 尽管两种形式在功能上是一样的, 但是我们推荐较短的那种,而且在本文中都会使用这种形式来使用数组。

数组构造语句
我们可以使用字面语句来进行数组构造,这是一种用一个或者多个数值构造数组的简单方法。字面语句是一系列由逗号分割并由方括号包含的数值。 [value 1, value 2, value 3]。

##声明一个[普通]数组

// 会根据数组的初始值来判断该数组的类型
var OneArry = ["A","B"]

// 声明一个为类型为String类型的数组
var shoppingList:[String] = ["E", "M"]
以此类推
1.定义个Int类型的数组
var twoArry:[Int] = [1,2,3]
2.定义一个Double类型的数组
var twoArryD:[Double] = [1.1,2.2,3.3]

##快速声明一个[数据类型确定的]数组

Swift给我我们提供了一个函数
/// Construct a Array of `count` elements, each initialized to
/// `repeatedValue`.
public init(count: Int, repeatedValue: Element)

可以初始化一个数组类型,数组的元素个数,每个元素的初始值
//快速声明一个数组 有数量 和 初始值
var OneStrings = [String](count:2,repeatedValue: "3")

可以这样
// 声明一个Int类型的数据有9个元素,并且每个数组的元素的初始化值都是0
[Int](count:9,repeatedValue:0)

##数组的访问和修改

if tempArry.isEmpty {
  print("是空的")
}else {
  print("不是空的")
}

2:用[append]方法在数组后面添加新的数据项
nameArry.append("apple")

3:用[insert]方法在数组后面添加新的数据项
nameArry.insert("dev", atIndex: 0)

4:+= 方法添加数据
nameArry += ["bb","tttt"]

数组遍历

####普通遍历

for items in nameArry {
    print("\(items)")
}

####遍历的时候同时获取索引和对应的数据

for (inde,values) in nameArry.enumerate() {
    print("索引:\(inde)" + "-----" + "数据:\(values)")
}

数组合并

在Swift中如果创建一个数组没有明确的类型指定,那他会根据数组里的数据来自动判断类型。这样搞还是很安全的。

var threeDoubles = [String](count:2,repeatedValue: "3")// ["3.0", "3.0", "3.0"]
var AnotherC = Array(count:3,repeatedValue:"3.0")// ["12", "3.0", "3.0", "3.0"]
var sumStr = threeDoubles + AnotherC// ["3", "3", "12", "3.0", "3.0", "3.0"]

更多消息

更多信iOS开发信息 请以关注洲洲哥 的微信公众号,不定期有干货推送:

这里写图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值