swift的数组和字典使用

//

//  ViewController.swift

//  swift基本语法004

//

//  Created by Ninesday on 16/6/22.

//  Copyright © 2016年 Ninesday. All rights reserved.

//

import UIKit

class ViewController: UIViewController {

override func viewDidLoad() {

super.viewDidLoad()

//        demo()

//        demo1()

//        demo2()

//        demo3()

//   demo4()

//        demo5()

//demo6()

//demo7()

//        arrayTogether()

//        demo8()

//        dictDemo()

//        demodict()

//        demoList()

demoTogether()

// Do any additional setup after loading the view, typically from a nib.

}

override func didReceiveMemoryWarning() {

super.didReceiveMemoryWarning()

// Dispose of any resources that can be recreated.

}

//字符串的操作

func demo() {

let str = "hello world"

let s1 = (str as NSString).substringWithRange(NSMakeRange(2, 4))

print(s1)

}

//循环操作

//方法1

func demo1() {

for var i = 0; i<10; i++ {

print(i)

}

}

//方法2:

func demo2() {

for i in 0..<9 {

print(i)

}

}

//方法3:

func demo3() {

for i in 0...9 {

print(i)

let a = 0..<20

print(a)

let b =  0...20

print(b)

}

}

//数组演练

//结构体可以打印  结构体需包装成 NSValue

func demo4()  {

let array = ["zhangsan ","lisi"]

let array2 = [ "zhangsan", "lisi", 18, NSValue(CGPoint:CGPoint(x: 20, y: 20))]

print(array)

print(array2)

}

//数组可变和不可变  可变用var 不可变用let

//在定义数组的时候会制动推导为 String 如果你想追加的时候一般默认追加为string

//如果非要追加为Int 类型的话  你可以 在定义自恒歌数组的时候就声明为 var array:[NSObject] =

func demo5() {

var array = ["zhangsan","lisi",]

//追加对象

array.append("wangwu")

print(array)

//如果要追加Int类型的

var array1:[NSObject] = ["huzuyu","hansome"]

array1.append(19)

print(array1)

//AnyObject swift新语法 表示任意的对象 swift对象没有任何父类

}

//数组的基本操作

//1.数组的遍历

func demo6() {

let array = ["zhnagsan","lisi"]

for s in array {

print(s)

}

}

//数组的修改 删除  添加

func demo7() {

var array = ["zhangsan","lisi"]

array.append("haha")

//修改

array[0] = "zhangsanwoaini"

//删除

print(array)

array.removeFirst()

//        array.removeLast()

print(array)

}

//数组的合并

//陷阱 如果加上一个的 如何不同的类型都要非常清楚

func arrayTogether() {

var array1 = ["张三","lisi"]

var array2 = ["wangwu","zhaoliu"]

array1 += array2

print(array1)

var array3:[NSObject] = ["lssaf","lisi",18]

var array4:[NSObject] = ["dsfhfdsf",10]

array3 += array4

print(array3)

}

//关于数组的容量测试

//使用可变的数组的时候  如果知道数组的容量 应该使用capacity实例化数组 一次性分配空间

func demo8() {

var array:[String]

//分配空间

array = [String]()

for i in 0...16 {

array.append("huzuyu\(i)")

print(array[i] + "容量\(array.capacity)")

}

}

//MARK:-字典的演练

//OC中用{}swift中任用[] 是通过值对

func dictDemo() {

let dict  = ["name":"huzuyu","age":18]

print(dict)

}

//从网络获取的JSON要求 那个key必须是NSString

//顶级节点必须是 NSString NSNumber  NSArray  NSDictionary

//JSON中字符串和NSNumber怎么区别  NSNumber没有引号

//字典可变和不可变

func demodict() {

var dict = ["name":"yangyan","age":18]

//key值存在的话 就覆盖

dict["name"] = "huzuyu"

//如果key值不存在的话就添加进去

dict["title"] = "I‘m changing"

print(dict)

}

//MARK:-字典的遍历

func demoList() {

var dict = ["name":"huzuyu","age":24,"love":"self","parents":"hfsdfas"]

for(ki, vi) in dict {

print("KEY \(ki)----------VALUES \(vi)")

}

}

//MARK:-字典的合并

//key有的话就覆盖

func demoTogether() {

var dict = ["name":"huhaha","age":24, "love":"nafa"]

var dict2 = ["name":"huzuyu","sex":"female"]

for (k,v) in dict2{

dict[k] = v

}

print(dict)

}

}

时间: 2024-10-13 04:45:42

swift的数组和字典使用的相关文章

Swift 之数组与字典

http://www.cocoachina.com/swift/20151230/14802.html 说到数组和字典,只要是编过程的小伙伴并不陌生.在Swift中的数组与字典也有着一些让人眼前一亮的特性,今天的博客就来窥探一下Swift中的Array和Dictionary.还是沿袭之前的风格,在介绍Swift中的数组时,我们会对比一下ObjC中的数组和字典,因为ObjC也是iOS开发的主要语言不是.无论是简单还是复杂的程序,数组和字典的用处还是比较多的,这两者虽然是Swift的基础内容,但是也

Swift中数组和字典都是值类型

在 Swift 中,所有的基本类型:整数(Integer).浮点数(floating-point).布尔值(Boolean).字符串(string).数组(array)和字典(dictionary),都是值类型,并且在底层都是以结构体的形式所实现.类是引用类型. 1.测试数组是否为值类型 var testArray = [String]() testArray.append("AA") testArray.append("BB") testArray.append(

swift中数组和字典得使用,及循环得使用方法(xcode6版本上所写代码)

// // main.swift // 数组 // // Created by Mac on 15-9-9. // Copyright (c) 2015年 青苹果. All rights reserved. // import Foundation //不可变数组,用let定义即可 var array:[String] = ["ss","set","jim"] println("\(array)") var array1:[F

Swift学习笔记数组与字典

swift中数组和字典都是以结构体的形式实现的. 首先,这个很奇葩,我不知道为什么这样设计,这样是出于一个什么样的考虑. 在C#中使用字典: Dictionary<int, string> dic = new Dictionary<int, string>(); Dictionary<int, string> dic1 = dic; dic.Add(1,"123"); dic1[1]="456"; Console.WriteLin

Swift基础 -- Swift集合类型(数组和字典)

Swift提供了两种集合类型来存放多个值——数组(Array)和字典(Dictionary).数组把相同类型的值存放在一个有序链表里.字典把相同类型的值存放在一个无序集合里,这些值可以通过唯一标识符(也就是键)来引用和查找. 在Swift里,数组和字典里所能存放的值的类型是明确的.这意味着你不能误把一个错误类型的值添加到数组或字典里,也意味着你可以明白无误地知道从数组 或字典里取得的值会是什么类型的.Swift集合是类型明确的,这保证了你的代码会清楚地知道它们所能处理的值的类型,并让你能在代码开

Swift集合类型(数组和字典)

Swift提供了两种集合类型来存放多个值——数组(Array)和字典(Dictionary).数组把相同类型的值存放在一个有序链表里.字典把相同类型的值存放在一个无序集合里,这些值可以通过唯一标识符(也就是键)来引用和查找. 在Swift里,数组和字典里所能存放的值的类型是明确的.这意味着你不能误把一个错误类型的值添加到数组或字典里,也意味着你可以明白无误地知道从数组或字典里取得的值会是什么类型的.Swift集合是类型明确的,这保证了你的代码会清楚地知道它们所能处理的值的类型,并让你能在代码开发

Swift学习笔记四:数组和字典

最近一个月都在专心做unity3d的斗地主游戏,从早到晚,最后总算是搞出来了,其中的心酸只有自己知道.最近才有功夫闲下来,还是学习学习之前的老本行--asp.net,现在用.net做项目流行MVC,而不是之前的三层,既然技术在更新,只能不断学习,以适应新的技术潮流! 创建MVC工程 1.打开Visual studio2012,新建MVC4工程 2.选择工程属性,创建MVC工程 3.生成工程的目录 App_Start:启动文件的配置信息,包括很重要的RouteConfig路由注册信息 Conten

Swift 数组和字典

数组: 中括号[ ] 表示,数组值之间用逗号分隔 1.如果数组声明为常量,则本身不能修改,且数组中的值也不能修改 2.指定数组的类型,语法:Array<Type> 可以简写为 [Type] var typeArray1: [String] var typeArray1: Array<Int> = [1, 2, 3] 3.如果声明了数组,但是没有初始化该数组,是不能被引用的 var typeArray1: [String] println(typeArray1)  出错!! 4.当检

Swift中的元组,数组,字典

元组(Tuples)与数组和字典的差别较大,元组是把多个值组成一个复合值: let http 404 Error = (404,"Not Found") //http 404 的类型是(Int,String),值是(404,"Not Found") 可以在定义元组的时候给单个元素命名,这时候元组的数组有一些相似: let http200Status = (statusCode: 200, description: "OK") 数组(Array)和