Swift 2.0 学习第3天: 字典和数组

原创 2015年11月20日 11:00:22

//: Playground - noun: a place where people can play


import Cocoa


/*

var str = "Hello, playground"


let nameArr = ["哈哈哈"]

for i in 0..<nameArr.count {

//    print(nameArr[i])

    

    for char in nameArr[i].unicodeScalars {

        var b = char.value

        print(b)//ASIIC

        

//        var a = Character(UnicodeScalar(char.value))

        var a = UnicodeScalar(char.value)

        print(a)//字符

    }

}

*/


/*

print("-----------------------------------")

/*-1-**********数组**********/

let myArr = ["1", "2", "0"]

print(myArr)


//声明

var arr:[String]

var arr1:Array<Int>

//赋值

arr = ["0", "1"]

arr1 = [0, 1, 2]

print(arr)

print(arr1)


//初始化,创建空数组 ****

var nullArr = [Int]()

var nullArr1:[String] = []

var nullArr2:Array<Float> = []

//初始化指定数的指定个数

var nullArr3 = [Int](count: 0, repeatedValue: 10)


//直接初始化

var nullArr4 = ["1", "2"]


//print(nullArr)

//print(nullArr1)

//print(nullArr2)

print(nullArr3)


//赋值

nullArr = [1, 2, 3]

nullArr1 = ["one", "two", "three"]

nullArr2 = [1.1, 2.2, 3.3]

//print(nullArr)

//print(nullArr1)

//print(nullArr2)


//数组的操作 ********

//1 -

nullArr1.insert("four", atIndex: nullArr1.count)//插入指定位置

print(nullArr1)


nullArr1.append("five")//追加在数组尾部

print(nullArr1)


nullArr1 += ["six"]//赋值追加至尾部,也可多个元素

print(nullArr1)


//1.1 - 数组的加法

//let tempArr = ["x", "y", "z"]

//nullArr1 = nullArr1 + tempArr

//print(nullArr1)


//1.2 - 根据区间赋值

//在数组个数范围内:

//多则追加在后面

//少则删除对应的原数组的元素

//正常情况,在范围内,,区间的步长对应个数的 元素


//三种特殊情况

//nullArr1[0...2] = ["6", "7"] //>

//print(nullArr1)

//nullArr1[0...1] = ["6", "7", "8"] //<

//print(nullArr1)

//nullArr1[1...2] = ["6", "7", "8"];

//print(nullArr1)


//2 -

//nullArr1.removeAtIndex(0)//删除置顶位置的元素

//print(nullArr1)

//nullArr1.removeLast()//删除最后元素

//print(nullArr1)


//3 -

nullArr1[2] = "2"

print(nullArr1)


//4 -

//var char = nullArr1[3]

//print(char)


//5 - 判断数组是否为空

if nullArr1.isEmpty {

    print("没有元素")

}else {

    print(nullArr1)

}


print("------------------")

//6 - 枚举数组中的元素

for str in nullArr1 {

    print(str)

}

print("------------------")

for i in 0 ..< nullArr1.count {

    print(nullArr1[i])

}

print("------------------")

//同时获取下标和元素

for (index, value) in EnumerateSequence(nullArr1) {

    print("\(index) = \(value)")

}


*/


//复习

//数组的声明

var myArr11:[String]

var myArr22:Array<Int>


//数组的初始化

var myArr33:[Int] = []

var myArr44:Array<String> = []

var myArr55 = [Float]()

var myArr66 = [Double](count:3, repeatedValue:10)


print("-----------------------------------")

/*-2-**********字典**********/

//字典的声明

var dict:[String:String]

var dict1:Dictionary<Int,Int>


//直接初始化

var dict2 = ["name":"xxz","sex":"boy"];

print(dict2)


//直接清空

dict2 = [:] //[:] 表示空字典

print(dict2)


//但初始化时,不能直接用[:],否则默认为NSDictionary

var dic = [:]; print(dic)

dic = ["name":"xxz","info":"info"];print(dic)


//字典的赋值

dict = ["name":"xxz","age":"25"]

dict1 = [1:12,2:23]


//字典的个数

let index = dict.count;print(index)


//字典的初始化 =>创建空的字典 ****

var nullDict = [String:String]()

var nullDict1 = Dictionary<String,String>()

//print(nullDict) //[:] 表示空字典

//print(nullDict1)


//字典的操作 ********

//

//直接根据名字赋值,,若有key直接更新,若没有key,直接添加

nullDict["name"] ="xxz"

print(nullDict)


//更新,,若有key直接更新,若没有key,直接添加

nullDict.updateValue("25", forKey:"age")

print(nullDict)


//删除

//nullDict["age"] = nil//将指定的keynil=>没有值,OCnil=>指值为空

//print(nullDict)

//nullDict.removeValueForKey("name")//移除指定的key

//print(nullDict)


//

//1

let age = nullDict.indexForKey("age")

print("age =\(age)")//


//2

var name = nullDict["age"]

print(name!)//String   

//or

var name1 = nullDict["age"]!

print(name1)//String


//

//若是数字组成的字符串 => Int

//否则, ? 直接没有值nil, !直接报错

let value11:Int! =Int(nullDict["age"]!)

print(value11)//Int


//获取字典的所有keyvalue,转换成数组

var keysArr = Array(nullDict.keys);

var valuesArr = [String](nullDict.values)

print("keysArr =\(keysArr)")

print("valuesArr =\(valuesArr)")


if nullDict.isEmpty {

    print("字典为空")

}else {

    print("字典不为空")

}


print("-------------------------")

//遍历

//1 同时获取keyvalue

for (key, value) innullDict {

    print("\(key):\(value)")

}

print("-------------------------")

//2 只获取key

for key in nullDict.keys {

    print("key = \(key)")

    

    if key == "age" {//根据key取值

        var age = Int(nullDict[key]!)//转换成Int //or

//        var age:Int! = Int(nullDict[key]!)

        var myAge = age!+10//若进行操作必须加!,或者声明时加上!

        print("myAge =\(myAge)")

    }

}

print("-------------------------")

//3 只获取value

for value innullDict.values {

    print("value =\(value)")

}

print("-------------------------")

for (index, element) in EnumerateSequence(nullDict) {

    print("\(index):\(element)")

}

print("-------------------------")






版权声明:转发请注明原文出处, 谢谢!

相关文章推荐

swift-学习之路,字典、数组、循环-控制流

swift-学习之路,字典、数组、循环-控制流

swift学习之数组、字典和字符串

数组、字典、字符串都比oc省略了“@”数组var arr:Array = [1,2,3,4] //遍历数组 for number in arr { print(number) } //数组增加...

Swift 学习笔记 2-简单值(变量、常量、数组、字典 )

一、变量      Swift的变量有如下几个特征:      1.var 开头定义变量      2.变量需要赋初值      3.打印时利用 \(...

Swift学习之十一:数组与字典(Array and Dictionary are collection types)

[objc] view plaincopyprint? /* Swift 提供了两种集合类型,即数组(Array)和字典(Dictionary),存储值的集合    数组存储相同类型的顺...

swift学习笔记(一)(常量、变量、数据类型、字符串的拼接、数组、字典)

import Foundation print("wangshuai") // 1.var 变量 // 当指定一个变量的时候就不可以再指定了,比如 var a = 1 虽然修饰的a可...

swift 数组、字典、集合、结构体、枚举——swift学习(四)

数组 字典 集合 结构体 枚举

swift资源库—3—字典/集合/数组

持续更新中,纯笔记记录哦~ 相关的代码需要的话,还请留邮箱,后续我会更新到github上~~ 这里是本人学习swift的系列文章,相关知识还请查看本人的其他文章 Swift语言提供Array、Se...

Swift基础2-数组、字典的介绍

上一篇博客向大家讲解了Swift中常量、变量和字符串,这篇再接着向大家介绍数组和字典这两个在OC中使用十分频繁的数据类型在Swift中的一些基本的使用方法。

初窥Swift-01-(基本输出,值类型,字典,数组)

swift出来那么久了,不属于狂热分子,今天才开始看看传说中的swift。本人代码经验很一般,但接触过的语言不少:c-java-c#-js-c++-html-css-oc等等吧,对Apple的东西的印...

Swift数组、字典和集合

原文出自:标哥的技术博客 前言Swift语言提供Array、Set和Dictionary三种基本的集合类型用来存储集合数据。数组是有序的数据集;集合是无序无重复的数据集;而字典是无序的键值对数组集。S...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)