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 ...
随机推荐
- Socket.IO 1.0 正式发布,快速可靠的实时引擎
Socket.IO 是目前 Web 领域最火的实时引擎,用于实现基于事件的双向实时的通信.它适用于任何平台,浏览器或设备,专注于可靠性和速度.您可以将数据推送到客户端,并获得实时的计数,日志或图表. ...
- IOS中对象的归档
ios提供了两个类 NSKeyedArichiver NSKeyedUnarchiver对自定义对象进行归档 和解档操作 归档常见方法 - (void)encodeObject:(id)objv fo ...
- LeetCode - 41. First Missing Positive
41. First Missing Positive Problem's Link ---------------------------------------------------------- ...
- 重构第28 天 重命名bool方法(Rename boolean method)
详解:本文中的”为布尔方法命名”是指如果一个方法带有大量的bool 参数时,可以根据bool 参数的数量,提取出若干个独立的方法来简化参数. 理解: 我们现在要说的重构并不是普通字面意义上的重构,它有 ...
- 面向对象的JavaScript(一)命名空间
在小项目中对于JavaScript使用,只要写几个function就行了.但在大型项目中,尤其是在开发追求良好的用户体验的网站中,如SNS,就会用到大量的JavaScrpt,有时JavaScript的 ...
- 人民币大写金额转换C#方法
方法的代码如下: /// <summary> /// 人民币大写 /// </summary> /// <param name="input"> ...
- jquery实现下拉框功能
说不清楚,直接上图 <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtm ...
- c# dynamic动态类型和匿名类
dynamic类型 简单示例 dynamic expando = new System.Dynamic.ExpandoObject(); //动态类型字段 可读可写 expando.Id = 1; e ...
- 轻松解决MYSQL数据库连接过多的错误
1.数据库系统允许的最大可连接数max_connections.这个参数是可以设置的.如果不设置,默认是100.最大是16384. 2.数据库当前的连接线程数threads_connected.这是动 ...
- csharp: Domain-Driven Design(领域驱动设计)
http://dddsample.sourceforge.net/ https://github.com/citerus/dddsample-core http://dddsamplenet.code ...