余晖落尽暮晚霞,黄昏迟暮远山寻
本站
当前位置:网站首页 > 编程知识 > 正文

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

xiyangw 2022-12-03 12:58 16 浏览 0 评论

数组

Swift语言里的数组和字典中存储的数据值类型必须明确。 这意味着我们不能把不正确的数据类型插入其中。 同时这也说明我们完全可以对获取出的值类型非常自信。 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"]

可以来微信公众号(洲洲哥)后台给我留言。 快来关注我吧!

相关推荐

前后端分离 Vue + NodeJS(Koa) + MongoDB实践

作者:前端藏经阁转发链接:https://www.yuque.com/xwifrr/gr8qaw/vr51p4写在前面闲来无事,试了一下Koa,第一次搞感觉还不错,这个项目比较基础但还是比较完整了,...

MongoDB 集群如何工作?

一、什么是“MongoDB”?“MongoDB”是一个开源文档数据库,也是领先的“NoSQL”数据库,分别用“C++”“编程语言”编写,使用带有“Schema”的各种类似JSON的文档,是也分别被认为...

三部搭建mongo,和mongo UI界面

三步搭建mongo,和mongoUI界面安装首先你需要先有一个docker的环境检查你的到docker版本docker--versionDockerversion18.03.1-ce,b...

Mongodb 高可用落地方案

此落地方案,用于实现高可用。复制集这里部署相关的复制集,用于实现MongoDB的高可用。介绍MongoDB复制集用于提供相关的数据副本,当发生硬件或者服务中断的时候,将会从副本中恢复数据,并进行自动...

一次线上事故,我顿悟了MongoDB的精髓

大家好,我是哪吒,最近项目在使用MongoDB作为图片和文档的存储数据库,为啥不直接存MySQL里,还要搭个MongoDB集群,麻不麻烦?让我们一起,一探究竟,继续学习MongoDB分片的理论与实践,...

IDEA中安装MongoDB插件-再也无要nosql manager for mongodb

大家都知道MongoDB数据库作为典型的非关系型数据库被广泛使用,但基于MongoDB的可视化管理工具-nosqlmanagerformongodb也被用的较多,但此软件收费,所以国内的破解一般...

数据库监控软件Lepus安装部署详解

Lepus安装部署一、软件介绍Lepus是一套开源的数据库监控平台,目前已经支持MySQL、Oracle、SQLServer、MongoDB、Redis等数据库的基本监控和告警(MySQL已经支持复...

YAPI:从0搭建API文档管理工具

背景最近在找一款API文档管理工具,之前有用过Swagger、APIManager、Confluence,现在用的还是Confluence。我个人一直不喜欢用Swagger,感觉“代码即文档”,让代...

Mac安装使用MongoDB

下载MongoDB包:https://www.mongodb.com/download-center解压mongodb包手动解压到/usr/local/mongodb文件夹配置Mac环境变量打开环境...

保证数据安全,不可不知道的MongoDB备份与恢复

大家在项目中如果使用MongoDB作为NOsql数据库进行存储,那一定涉及到数据的备份与恢复,下面给大家介绍下:MongoDB数据备份方法在MongoDB中我们使用mongodump命令来备...

MongoDB数据备份、还原脚本和定时任务脚本

备注:mongodump和mongorestore命令需要在MongoDB的安装目录bin下备份脚本备份格式/usr/local/mongodb/bin/mongodump -h ...

等保2.0测评:mongoDB数据库

一、MongoDB介绍MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产...

MongoDB入门实操《一》

什么是MongoDBMongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之...

Python安装PyMongo的方法详细介绍

欢迎点击右上角关注小编,除了分享技术文章之外还有很多福利,私信学习资料可以领取包括不限于Python实战演练、PDF电子文档、面试集锦、学习资料等。前言本文主要给大家介绍的是关于安装PyMongo的...

第四篇:linux系统中mongodb的配置

建议使用普通用户进行以下操作。1、切换到普通用户odysee。2、准备mongodb安装包,自行去官网下载。3、解压安装包并重命名为mongodb4.04、配置mongodbcdmongod...

取消回复欢迎 发表评论: