学习Swift -- 数组(Array) - 持续更新
集合类型--数组
Array是Swift中的一种集合类型:数组,数组是使用有序列表储存同一类型的多个值,与OC的NSArray的最大不同是,Swift的数组是值类型,OC的数组是引用类型
声明数组的方法
// 如果声明可变数组 就设置为变量
var someMutableArray = [Int]() // 声明了空数组 类型为Int // 相反声明不可变数组就设置为常量
let someArray = Array(count: 5, repeatedValue: 0.03) // 声明了一个不可变数组,类型自定推断为double类型,包含5个元素,它们的值都是0.03 // 直接设置元素的声明方法
let someInt = [3,5,8,10,91] // 声明了一个 可以包含任何类型的数组
var array = [Any]()
访问数组中的元素或其他属性
let someInt = [3,5,8,10,91] someInt.first // 取到数组的第一个元素,如果数组为空返回 nil
someInt.last // 取到数组的最后一个元素,如果数组为空返回 nil
someInt.count // 获得数组中的元素个数
someInt.isEmpty // 判断数组是否为空 空返回true
someInt[4] // 通过下标脚本访问第4个元素的值,注意下标是从0开始计算
let subInts = someInt[2...4] // 通过一个范围访问元素,返回一个数组
为数组添加新元素
var someMutableArray = [Int]() // 声明了空数组 类型为Int
someMutableArray.append(5) // 添加一个元素 5
someMutableArray += [11, 0] // 拼接一个数组
someMutableArray.insert(3, atIndex: 1) // 在指定的下标插入一个值
删除数组的元素
var someMutableArray = [5, 10, 88, 55, 69, 73, 411]
someMutableArray.removeLast() // 删除最后一个元素
someMutableArray.removeFirst() // 删除第一个元素
someMutableArray.removeRange(0...2) // 删除一个范围内的元素
someMutableArray.removeAtIndex(0) // 删除指定位置的元素
someMutableArray.removeAll() // 删除所有元素
修改数组中的元素
var someInt = [12, 55, 86, 49, 31, 12, 558]
someInt[5] = 111 // 通过下标脚本修改
someInt[0...2] = [1, 2, 3] // 通过一个范围修改
常用的遍历方法
var someInt = [12, 55, 86, 49, 31, 12, 558]
for item in someInt {
print(item) // item会自动推断类型
} for (index, value) in someInt.enumerate() {
// 通过一个元组遍历,index是下标, value是值
print(index, value)
}
学习Swift -- 数组(Array) - 持续更新的更多相关文章
- [Swift]数组(Array)最强解析
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- PHP学习之数组Array操作和键值对操作函数(一)
PHP 中的数组实际上是一个有序映射.映射是一种把 values关联到 keys 的类型.此类型在很多方面做了优化,因此可以把它当成真正的数组,或列表(向量),散列表(是映射的一种实现),字典,集合, ...
- iOS 开发学习资料整理(持续更新)
“如果说我看得比别人远些,那是因为我站在巨人们的肩膀上.” ---牛顿 iOS及Mac开源项目和学习资料[超级全面] http://www.kancloud.cn/digest/ios-mac ...
- cocos2d-x学习资源汇总(持续更新。。。)
引用地址:http://www.cnblogs.com/zilongshanren/archive/2012/02/17/2356516.html 我之前一直学习c++的,第一次接触cocos2d是o ...
- 【我的Android进阶之旅】Realm数据库学习资料汇总(持续更新)
介绍 realm是一个跨平台移动数据库引擎,支持iOS.OS X(Objective-C和Swift)以及Android. 2014年7月发布.由YCombinator孵化的创业团队历时几年打造,是第 ...
- Javascript 学习之数组 Array
数组在Javascript中占有很重要的地位.任何控件开发离不开数组的使用. 构造函数 new Array( ) new Array(size) new Array(element0, element ...
- PHP开发过程中数组汇总 [ 持续更新系列 ]
开发过程中经常会使用到数组函数,故特地总结出来,自己熟悉,同时供大家参考!(实例部分会抽空尽快完成) 一.目录 array_merge(); 合并数组 array_keys(); array_filt ...
- Swift字符串操作-持续更新-2022
Swift字符串追加 var str = "OC" str.append(" Swfit") print(str) // 输出结果: OC Swift 输出结果 ...
- [Unity3D]引擎学习之注意事项(持续更新中)
调试相关 如果是想在触发粒子系统效果的时候播放声音(比如爆炸的特殊发生时也播放声音),则需要将爆炸效果的粒子系统保持为Prefab后,添加Audio Source组件,在组件中添加声音文件并且确保pl ...
随机推荐
- [转]3proxy 二级代理配置样例
转自:http://www.cnblogs.com/airsong23/p/3893094.html 适应情况: 有时,我们的机器HOST-A只能通过代理服务器HOST-B才可以访问internet, ...
- JMeter入门(3):录制JMeter脚本
一般自己手动的设置JMeter会比较麻烦,如果一边操作页面,提交表单,一边能够自动生成JMeter的脚本,则非常方便: BadBoy:录制JMeter脚本: Donwload URL:http://w ...
- 【转】Android 混淆代码总结
http://blog.csdn.net/lovexjyong/article/details/24652085 为了防止自己的劳动成果被别人窃取,混淆代码能有效防止被反编译,下面来总结以下混淆代码的 ...
- polygonal approximation
Several methods and codes in the website: https://sites.google.com/site/dilipprasad/source-codes TRA ...
- PureMVC(JS版)源码解析(十):Controller类
这篇博客我们继续讲解PureMVC的三大核心类(View/Controller/Model)——Controller类.根据PureMVC模块设计,Controller类保存所有的Comm ...
- [学习笔记]设计模式之Bridge
写在前面 为方便读者,本文已添加至索引: 设计模式 学习笔记索引 “魔镜啊魔镜,谁是这个世界上最美丽的人?”月光中,一个低沉的声音回荡在女王的卧室.“是美丽的白雪公主,她正和小霍比特人们幸福快乐地生活 ...
- Oracle 设置archivelog错误解决方案
在Oracle 数据库的实际应用中,开启archivelog模式是必不可少的,但是在设置archivelog的过程中,可能因为不小心出现错误,导致数据库无法启动,本案例就是一种情况. 误操作现象: 设 ...
- eclipse中svn插件的安装
Svn(Subversion)是近年来崛起的版本管理工具,在当前的开源项目里(J2EE),几乎95%以上的项目都用到了SVN.Subversion项目的初衷是为了替换当年开源社区最为流行的版本控制软件 ...
- Android canvas rotate():平移旋转坐标系至任意原点任意角度-------附:android反三角函数小结
自然状态下,坐标系以屏幕左上角为原点,向右是x正轴,向下是y正轴.现在要使坐标系的原点平移至任一点O(x,y),且旋转a角度,如何实现? 交待下我的问题背景,已知屏幕上有两点p1和p2,构成直线l.我 ...
- 借用网上大神的一些知识,html5 video 视频播放都兼容(Android,iOS,电脑)
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head> < ...