Swift中的数组
学习来自《极客学院:Swift中的字符串和集合》
工具:Xcode6.4
直接上基础的示例代码,多敲多体会就会有收获:百看不如一敲,一敲就会
import Foundation //数组:1、数组创建 2、访问和修改数组 /*声明数组写法:
第一种:Array<SomeType>, 如Array<Int>
第二种:[SomeType],如[String]
*/
//第一种
var myArr = Array<String>()//创建空数组,并赋值给myArr变量
println(myArr)
var num = Array<Int>(count: , repeatedValue: )
println(num)
//第二种
var arr: [Int] = [,,] //使用构造语法来创建一个由特定数据类型构成的空数组
var someInts = [Int]()
var threeDoubles = [Double](count: , repeatedValue: 1.2)
var food = ["apple","orange","tomato","potato"]//这种方式用的比较多
println(food.count)
println(food[]) var shoppingList = ["Eggs",,true]
//因为数组存储的类型不同,当访问每个元素的时候,swift会默认推断为AnyObject类型
for item in shoppingList{
println(item)
} /*下面的程序代码会报错,是因为这里的fruit是默认为let型的
for fruit in food{
fruit = "good"
println(fruit)
}
*/
/*****数组的可变性*****/
//1.append() 方法在数组尾部添加新元素
food.append("Vegetables: mushroom")
//2.通过加法添加元素数组
food += ["pineapple","pitaya"]
println(food)
//3.替换,指定替换的下标范围,然后是给出的替换元素,
//也存在元素不够,不够的就变成数组少了元素,这里不是仅仅编程空元素,而是没了
food[...] = ["A","B"]
println(food) /*****数组的常用的方法*****/
food.insert("Meat", atIndex: )//插入的对象和位置
println(food)
//使用removeAtIndex方法来移除数组中的某一项
food.removeAtIndex()
println(food)
//使用removeLast方法删除最后一个元素
food.removeLast()
println(food)
//删除所有元素,参数为是否保留数据缓冲,默认是false
food.removeAll(keepCapacity: false)
println(food)
运行的结果是:
Swift中的数组的更多相关文章
- Swift中实现Array数组和NSArray数组的相互转换与遍历
Array是Swift中的数组数据类型.而NSArray是OC中的数组数据类型.两者有差别有联系.在Swift中有时候难免会使用到OC中的一些东西.今天我们就来Swift中使用NSArray和Arra ...
- 记OC迁移至swift中笔记20tips
写久了OC后来写swift,总感觉写着是swift的皮毛,但是实际上是OC的核心,这里整理了OC迁移至swift中的一些小细节. 1 在当前类中,实例方法调用属性以及方法都可以将self省略掉,而且是 ...
- Swift中对C语言接口缓存的使用以及数组、字符串转为指针类型的方法
由于Swift编程语言属于上层编程语言,而Swift中由于为了低层的高性能计算接口,所以往往需要C语言中的指针类型,由此,在Swift编程语言刚诞生的时候就有了UnsafePointer与Unsafe ...
- Swift中关于任意类型的数组
在Objc中你是不可以把一个非对象类型放入数组的,你必须将其"封箱",然后再放入数组. 在Swift中你可将非对象类型轻松放入数组: let ary = [1,2,3] 你可以明确 ...
- iOS swift中比较模型数组是否相等
在oc中,如果要比较模型数组中的元素是否相等一般重新isEqual方法即可 -(BOOL)isEqual:(id)object{ if (self == object) { return YES; } ...
- Swift中数组和字典都是值类型
在 Swift 中,所有的基本类型:整数(Integer).浮点数(floating-point).布尔值(Boolean).字符串(string).数组(array)和字典(dictionary), ...
- Swift 中 String 与 CChar 数组的转换
在现阶段Swift的编码中,我们还是有很多场景需要调用一些C函数.在Swift与C的混编中,经常遇到的一个问题就是需要在两者中互相转换字符串.在C语言中,字符串通常是用一个char数组来表示,在Swi ...
- 阿里巴巴最新开源项目 - [HandyJSON] 在Swift中优雅地处理JSON
项目名称:HandyJSON 项目地址:https://github.com/alibaba/handyjson 背景 JSON是移动端开发常用的应用层数据交换协议.最常见的场景便是,客户端向服务端发 ...
- 窥探Swift之使用Web浏览器编译Swift代码以及Swift中的泛型
有的小伙伴会问:博主,没有Mac怎么学Swift语言呢,我想学Swift,但前提得买个Mac.非也,非也.如果你想了解或者初步学习Swift语言的话,你可以登录这个网站:http://swiftstu ...
随机推荐
- 使用 PSD Validator 在线校验 PSD 文件的质量
PSD Validator 可以帮助你在线校验 PSD 文件的质量,使用的规则来自 Photoshop Etiquette.Photoshop Etiquette 整理了 PSD 文件的规范,例如删 ...
- iOS-NSDate
一.概念解释 1.什么是NSTimeZone? NSTimeZone:时区是一个地理名字,是为了克服各个地区或者国家之间在时间上的混乱设定的. 1).GMT:0:00格林威治标准时间:UTC +00: ...
- 继续谈论XSS
这篇文章基于上篇谈论XSS ,想说下自己工作过程中遇到的xss的问题. 易出现XSS的场景 1 jsonp 说说jsonp 中也有说过,jsonp其实是很容易出现安全问题的.由于jsonp的callb ...
- EF封装类,供参考!
以下是我对EF DB FIRST 生成的ObjectContext类进行封装,代码如下,供参考学习: using System; using System.Collections.Generic; u ...
- $.ajax、$.post、from表单序列化工具
$.ajax\$.post <script type="text/javascript" language="javascript" src=" ...
- C#的注释和快速开启工具的命令
1.注释的方法 1)sqlserver中,单行注释:—— 多行注释:/****/ 2)C#中,单行注释:// 多行注释:/****/ 3)C#中多行注释的快捷方式:启用ctrl+E+C ,撤 ...
- 变废为宝,将Discuz废弃的cache机制引入到memory体系中
Discuz的source/class/cache目录,代表着相应的缓存机制,但实际上废弃很多年了. Discuz用Memory代表了缓存,里面内置了memcache等多种缓存驱动. 但很多人的开发环 ...
- linux下基本命令总结
基本linux命令的使用方法及实例,总结一些常用的命令: 一.创建文件和目录命令:mkdir touch(vim用得较多) 1)mdkir创建一个目录,创建多目录格式 mkdir –p a/{a,b ...
- 搭建angularjs API文档站点
提供一个国内可以访问的 angularjs API文档站点 http://i.frllk.com/ 文档直接在 github 上下载的: https://github.com/angular-cn/n ...
- weblogic 12c下jxls导出excel报错Could not initialize class org.apache.poi.xssf.usermodel.XSSFVMLDrawing
周一,开发反馈weblogic 12c下jxls导出excel报错,公司环境和UAT环境均报错,看日志如下: 2016-06-08 09:16:55,825 ERROR org.jxls.util.T ...