4.0 swift 数组使用_swift4.0 数组倒叙 - CSDN
  • 1.在ios开发中,数组经常用到,今天我们就来说说数组// 1.定义一个不可变数组 let arrayC = [1,2,3] // 2.定义一个可变数组 // 2.1 定义一个任意类型的数组 //var arrayM = Array<T>() var arrayM = ...

    1.在ios开发中,数组经常用到,今天我们就来说说数组

    // 1.定义一个不可变数组
    let arrayC = [1,2,3]
    
    // 2.定义一个可变数组
    //  2.1 定义一个任意类型的数组
    //var arrayM = Array<T>()
    var arrayM = Array<Any>()
    //  2.2 定义一个int类型的数组
    var arrayM2 = [3,4,5,6]
    
    // 3.往数组里面增加一个元素
    arrayM.append(7)
    arrayM.append("12312")
    arrayM2.append(7)
    
    // 4.往数组里面删除一个元素
    arrayM.remove(at: 0)
    
    // 5.数组里面改变一个元素
    arrayM[0] = 200
    
    // 6.往数组查找一个元素
    arrayM[0]

    2.swift中的数组新增了一个capacity属性,它的值是成倍数增加的

    3.遍历数组的几种方式

    var arrayMM = [1,2,3,4,5]
    // 1.遍历索引
    for i in 0 ..< arrayMM.count	 {
        print("i=\(i)")
    }
    
    // 2.遍历数组
    for value in arrayMM{
        print("value=\(value)")
    }
    
    // 3.遍历索引和数组
    for (index,value) in arrayMM.enumerated() {
        print("index=\(index)")
        print("value=\(value)")
    }
    

    展开全文
  • Swift4.0数组的声明

    2019-01-11 13:01:17
    总所周知,Swift是强类型语言 所以其数组中元素都必须是同一个类型的  而OC中的数组是可以存放任意Object-C对象的 如下 ...下面来看看Swift数组的声明 //普通声明方法 let nums = [1,2,3,4,5] let string = [...

    总所周知,Swift是强类型语言 所以其数组中元素都必须是同一个类型的 

    而OC中的数组是可以存放任意Object-C对象的 如下 凡是OC对象都要加@

    NSString *str=@"字符串";

     NSArray*OCArray =@[str,@1];

     

    下面来看看Swift数组的声明

    //普通声明方法

    let nums = [1,2,3,4,5]

    let string = ["1","2","3","4","5"]

    //显示类型声明

    let emptyArray1 : [Int] = []

    let emptyArray2 : [String] = []

    let emptyArray3 : [Character] = []

    //显示Array类型声明

    let Arrayofnum : Array<Int> = [1,2,3,4,5]

    let ArrayofStr : Array<String> = ["1","2","3","4","5"]

    //调用构造函数

    let arr =[Int]()

    let arr1 = [Int](repeatElement(3, count: 3))

    let arr2 = Array<Character>(repeatElement("?", count: 3))

     

    let emptyArray4 : Array<Int> = []

    // 直接写[]会桥接为NSArray,除非特殊情况,不要这么做

    // swift 2: var emptyArray5 = []

    // swift 3 不支持在没有显式地声明数据类型的情况下使用[]。如果想创建一个空的NSArray,则需要声明数据类型

    let OCArr : NSArray = []

    展开全文
  • //创建数据的几种方式 var someArray1 = [String](repeatElement("123", count: 3)) //类型是字符串,默认是123 长度是3 var someArray2 = ["123","123","123"] var someArray3 : [String]=["123","123","123"] ...
    //创建数据的几种方式
    var someArray1 = [String](repeatElement("123", count: 3)) //类型是字符串,默认是123 长度是3
    var someArray2 = ["123","123","123"]
    var someArray3 : [String]=["123","123","123"]

    someArray1.count

    //使用数据中的某个值
    var someVar1 = someArray1[2]
    someArray1[1]="234"
    someArray1

    //数组的追加值

    var someArray4=[Int]()//创建一个初始化数据为空的数据
    someArray4.count
    someArray4.append(10)
    someArray4.append(13)
    someArray4.append(15)
    //数据的遍历 for in
    for someVar2 in someArray4
    {
        print(someVar2)
    }
    //遍历数组的下标和值 enumerated 枚举的意思
    for (index , item) in someArray4.enumerated()
    {
        print("下标\(index) 值为\(item)")
    }

    //合并数据 +
    var someArray5 = someArray1+someArray2
    //数组删除某个元素
    someArray4.remove(at: 1)
    someArray4.remove(at: 1)

    someArray4.count

    print(someArray4)

    //更改数据的某个元素
    someArray4[0]=222;
    someArray4

    //判断数据是否为空
    if someArray5.isEmpty {
        print("数组为空")
        
    }else{
        print("数组不为空")
    }
    展开全文
  • 【Swift初见】Swift数组

    2015-02-27 20:25:04
    在Objective-C中数组是常用的数据类型,在Swift中同样如此,在OC中有NSArray与NSMutableArray之分,但是在Swift中只有通过let和var来区分数组是否可变,Swift中的数组是类型安全的,所以在某个数据被存入到某个数组...
    在Objective-C中数组是常用的数据类型,在Swift中同样如此,在OC中有NSArray与NSMutableArray之分,但是在Swift中只有通过let和var来区分数组是否可变,Swift中的数组是类型安全的,所以在某个数据被存入到某个数组之前类型必须明确,假如我们创建了一个String类型的数组,那么该数组中就不能添加非String的数据类型,这是Swift与OC的一个很重要的区别。

    数组的构造
    我们以创建一个数组并存储Int类型的数组为例:
    var array = [2, 3, 4, 5]
    var array1: Array = [2, 3, 4, 5]
    var array2: Array<Int> = [2, 3, 4, 5]
    var array3: [Int] = [2, 3, 4, 5]
    

    数组的数量:数组有一个只读属性 count来获取数组中的数据项数量。
    array.count

    检查数组是否为空可以用isEmpty来检查count是否为0
    if array.isEmpty {
        println("array is Empty")
    }else{
        println("array is not Empty")
    }

    当要在数组后面添加新的数据项时可以使用append方法来添加:
    array .append(6)

    此时数组中就有5个值了,
    当数组的数据类型为字符串时,也可以使用加法赋值运算符(+=)直接在数组的后面添加新的数据项;
    加法运算符也可以直接添加拥有相同类型的数组:
    array += [7,8]

    获取数组中数据项的时候,可以用索引来获取值:
    var intV = array[0]

    注:不管是OC还是Swift,数组的索引都是从0开始。

    修改数组中的某一项时,也可以通过索引来改变:
    array[0] = 9

    此时数组就为:[9, 3, 4, 5, 6, 7, 8]
    swift中也可以通过下标一次性改变多个数据值:
    array[1...3] = [10,11,12]

    此时数组值就是:[9, 10, 11, 12, 6, 7, 8]
    在数组尾部添加新项时,不能使用下标来添加新项,此时数组越界,会引发一个运行期错误。

    在某个具体索引值之前添加数据项,调用数组的insert(atIndex)来添加:
    array.insert(13, atIndex: 0)

    此时的数组值为:[13, 9, 10, 11, 12, 6, 7, 8]

    同样的,移除数组的某一项时用removeAtIndex 方法;
    移除最后一项的时候用removeLast

    数组遍历
    普遍的我们使用for-in循环来遍历数组中的所有数据项
    for i in array {
        println(i)
    }


    swift提供一个enumerate函数来遍历数组,会同时返回数据项和索引值:
    for (index, value) in enumerate(array){
        println("index : \(index) value: \(value)")
    }


    此时打印的值为:
    index : 0 value: 13
    index : 1 value: 9
    index : 2 value: 10
    index : 3 value: 11
    index : 4 value: 12
    index : 5 value: 6
    index : 6 value: 7
    index : 7 value: 8

    如果我们需要创建一个数组,该数组有特定的大小并且所有的数据都是被默认的,此时swift提供了一个数组构造函数:
    var newArray = [String](count: 4, repeatedValue: "test")

    当然,swift具有类型推断功能,我们也可以如下定义:
    var newArray2 = Array(count: 3, repeatedValue: "today")

    我们知道,两种数据项类型相同的数组我们可以通过(+)来组合到一起形成一个新的数组:
    var newArray3 = newArray + newArray2


    欢迎大家共同学习指导。
    展开全文
  • //// ViewController.swift// 011-数组//// Created by 庄壮勇 on 2018/1/3.// Copyright © 2018年 Personal. All rights reserved.//import UIKitclass ViewController: UIViewController { override func ...
  • 数组进行排序,根据指定的排序规则,看下面的代码: var array = [2, 3, 4, 5] array.sort{$0 $1} println(array) 此时打印出:[2, 3, 4, 5] 其实sort大括号里面是一个闭包,这个以后再学习。 如果倒叙排列,代码...
  • Swift基础(四)数组

    2016-07-11 15:33:38
    // Swift 的类型推断:如果使用数组字面量来初始化一个数组,那么这个数组字面量的值具有相同的类型,可以不必明确这个数组的类型。  var teachers = ["Mr. Wang", "Mr. Liu"];  // 因为teachers数组字面量中的...
  • 我们先来定义一个常量整型数组 let array = [5, 4, 3, 1, 2] 过滤器(filter)使用之筛选出大于3的值 let resultArray = array.filter { (item) -&gt; Bool in return item &gt; 3 } print(result...
  • 学习笔记 四种初始化方式  let sArray = [1.2,3,4,5,6] let sArray1:Array = [12,3,4,5,6,6] let sArray2:Array = [1,2,3,29] ...数组元素可以是不同类型 let array1:[Any] = ["a",1
  • 数组和字典 数组和字典的创建和OC基本一致,不用写前面的@而已,但是遍历字典的时候,Swift由于有元祖这个东西在,改进的方便了一点,,举例如下: let dictionay = ["一":1,"二":2] //如果...
  • 1. filter (过滤器):返回符合条件的一个数组 let arr = [1,5,6,7,10,0] //写法1 let arr1 = arr.filter { (item) -> Bool in return item % 2 == 0 ...
  • 数组 Arrays 1、一个数组只能存储特定类型的数据; 2、所存储的数据不一定是一个类的对象,可以是基础数据类型; var array = [&amp;quot;A&amp;quot;,&amp;quot;B&amp;quot;,&amp;quot;C&...
  • NSString *str = @"数组"; NSArray *array=@[@"who",@"数组",@"array",@"3"]; BOOL isbool = [array containsObject: str]; NSLog(@"i = %i",isbool); i=1;数组包含某个元素 i=0;数组不包含某个元素 ...
  • //获取数据 func setLocalData() { self.showHUD() self.task = FetchManager.share.fetchBrandList( success: { [unowned self] (list) -> (Void) in DispatchQueue.m...
  • 定义数组常量(常量只有读操作) let array1: [Int] = [11, 55, 5] let array2 = [11, 55, 5] 定义数组变量 var array: [Int] = [] // 这是我最喜欢的 var array0: [Int] = [10, 20, 30] // 初始化并赋值 ...
  • 在进行数组转模型的操作时,数据转化后为空, 换成使用oc创建的模型类之后,可以进行互转, 详情如图 换成oc类型的模型类如图 原因: 原因: Swift 4 里面继承NSObject 不再默认在变量前 添加@objc; ...
  • swift4.0-11 类和结构体

    2019-04-28 00:40:49
    代码学习swift4.0, 类和结构体 // // main.swift // SwiftLearn11-类和结构体 // // Created by iOS on 2018/5/7. // Copyright © 2018年 weiman. All rights reserved. // impor...
  • If there are two arrays created in swift like this: 如果有两个这样迅速创建的数组: var a:[CGFloat] = [1, 2, 3] va
  • 为什么80%的码农都做不了架构师?>>> ...
1 2 3 4 5 ... 20
收藏数 1,351
精华内容 540
关键字:

4.0 swift 数组使用