Swift-数组
Swift数组
OC和Swift数组的比较
- OC 只能存放对象
- swift 既可以存放对象,又可以存Int,Float等基本数据类型
- OC 只能存放对象
下面是swift数组的具体示范
空数组
let arr = []
let arr2 = [Int]()
let arr3 = Array<Int>()
有值数组
let arr4 = [1,2,3,4]
let arr5:[Int] = [1,2,3,4,5]
let arr6:Array<Int> = [1,2,3,4]
let创建的是不可变数组,var创键的是可变数组
var arr7:[Int] = [] arr7.append(2) print(arr7)
如果定义数组类型,所有元素一定是该类型
let arr8:[String] = ["aaa","bbb"]
如果没有定义数组类型,所有元素的类型是[NSObject]
let arr9 = ["zhang san",19,190]
数组元素个数
print(arr9.count) //Any 可以存任何的对象,func
//AnyObject 可以存任何class类型的对象
let arr10:[Any] = ["zhangsan",10,190] print(arr10)
取值,某个元素
print(arr10[2])
取值区间
print(arr10[0..<2])
range取值
print(arr10[Range(start: 0, end: 2)]) var arr11:[Any] = ["zhangsan",10,190]
添加元素
arr11.append("male")
加数组
arr11 += ["xiaoyu"]
插入元素
arr11.insert(81, atIndex: 2)
更新元素
arr11[4] = "remale"
删除元素
arr11.removeFirst() arr11.removeLast() print(arr11) arr11.removeFirst(2) arr11.removeRange(Range(start: 0, end: 2))
arr11.removeRange(1...2)
删除所有,包括删除容量
arr11.removeAll()
删除所有,但不删除容量
arr11.removeAll(keepCapacity: true)
print("Capacity:\(arr11.capacity)")
数组的批量操作
var arr12 = [1,2,3,4]
//0,1替换成另一个数组[80,81,82,83] arr12[0...1] = [80,81,82,83] print(arr12)
遍历操作
for obj in arr12 {
print(obj)
} for obj in arr12[1...2] {
print(obj)
}
Swift-数组的更多相关文章
- Swift数组
数组的介绍 数组(Array)是一串有序的由相同类型元素构成的集合 数组中的集合元素是有序的,可以重复出现 Swift中的数组 swift数组类型是Array,是一个泛型集合 数组的初始化 数组分成: ...
- 3. Swift 数组|字典|集合
在OC中数组,字典,集合有自己的表示方法,分别是Array,Dictionary,Set 与 String 都属于数值类型变量,他们都属于结构体. 使用简介灵活多变,个人感觉可读性变差了很多,用起来由 ...
- 学习Swift -- 数组(Array) - 持续更新
集合类型--数组 Array是Swift中的一种集合类型:数组,数组是使用有序列表储存同一类型的多个值,与OC的NSArray的最大不同是,Swift的数组是值类型,OC的数组是引用类型 声明数组的方 ...
- Swift数组的存取与修改
对数组的存取与修改可以通过数组的方法和属性来进行,或者使用数组的下标语法. 要知道数组中元素的数量,可以查看它的只读属性count: println("The shopping list c ...
- Swift数组字面量
可以用一个数组字面量来初始化一个数组,简单地把一个或多个值放在一起就可以了.数组字面量的写法是一行用逗号隔开的值,并在行的两端用一对方括号包起来: [value , value , value ] 下 ...
- swift 数组 的一些快速方法
1. filter (过滤器):返回符合条件的一个数组 let arr = [1,5,6,7,10,0] //写法1 let arr1 = arr.filter { (item) -> Bool ...
- swift 数组作为函数参数的书写格式
数组定义 --[来自百度知道] Swift语言使用类型名紧接中括号[]来简化标准库中定义的命名型类型Array.例如 Array<String> = ["Alex", ...
- [Swift]数组(Array)最强解析
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- 【Swift初见】Swift数组(二)
在苹果的开发文档中对Array还提供了其它的操作算法: 1.Sort函数: 对数组进行排序.依据指定的排序规则,看以下的代码: var array = [2, 3, 4, 5] array.sort{ ...
- Swift数组的加法运算符用法:array1 += array2
var stringList1 = [String]() //创建String类型空数组 var stringList2 = ["1", "3", " ...
随机推荐
- CentOS 7 上部署Mono 4 和Jexus 5.6
概述 在这篇文章中我们将讨论如何在CentOS 7操作系统,安装 jexus. mono 和 配置 jexus,因此它将能够在这种环境中运行一个asp.net mvc 4 应用.这篇文章是描述如何在 ...
- 大型网站的灵魂——性能
前言 在前一篇随笔<大型网站系统架构的演化>中,介绍了大型网站的演化过程,期间穿插了一些技术和手段,我们可以从中看出一个大型网站的轮廓,但想要掌握设计开发维护大型网站的技术,需要我 ...
- 小丁带你走进git的世界二-工作区暂存区分支
小丁带你走进git的世界二-工作区暂存区分支 一.Git基本工作流程 1.初始化一个仓库 git init git clone git仓库分为两种情况: 第一种是在现有项目或目录下导入所有文件到 ...
- 详解this
this 虐我千百遍,看完此文效立见!不得不说,这篇文章的总结很地道很全面,适合收藏之用. 原文:all this 习惯了高级语言的你或许觉得JavaScript中的this跟Java这些面向对象语言 ...
- Winform下CefSharp的引用、配置、实例与报错排除(源码)
Winform下CefSharp的引用.配置.实例与报错排除 本文详细介绍了CefSharp在vs2013..net4.0环境下,创建Winfrom项目.引用CefSharp的方法,演示了winfro ...
- Nginx服务器 之反向代理与负载均衡
一.反向代理 正向代理: 客户端要获取的资源就在服务器上,客户端请求的资源路径就是最终响应资源的服务器路径,这就是正向代理.正向代理的特点:就是我们明确知道要访问哪个网站地址. 反向代理: 客户端想获 ...
- HTML5_05之SVG扩展、地理定位、拖放
1.SVG绘图总结: ①方法一:已有svg文件,<img src="x.svg"> 方法二:<body><svg></svg>&l ...
- 原创:CSS3技术-雪碧图自适应缩放与精灵动画方案
花了一个礼拜完成了慕课网定制的七夕主题效果,其中有一个没实现好的功能,就是雪碧图的自适应缩放 ps: 以下实现都是基于移动端的处理 原图如下: 人物是采用的是雪碧图,通过坐标绝对数据取值 问题很明显, ...
- Android之自定义View的实现
对于学习Android开发的小童鞋对于自定义View一定不会陌生,相信大家对它是又爱又恨,爱它可以跟随我们的心意设计出漂亮的效果:恨它想要完全流畅掌握,需要一定的功夫.对于初学者来说确实很不容易,网上 ...
- 举个栗子学习JavaScript设计模式
目录 前言 创建型模式 单例模式 构造器+原型 简单工厂模式 工厂模式 创建型模式比较 结构性模式 模块模式 外观模式 混入模式 装饰模式 适配模式 行为型模式 观察者模式 中介者模式 命令模式 责任 ...