【Swift】学习笔记(四)——设置(Collection)

【Swift】学习笔记(四)——设置(Collection)

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

Swift和其他语言也提供了两种类型的集合:数组和字典


数组:数组用来按顺序存储同样类型的数据,swift规定它是类型安全的,每个数组都有自己的类型也就是其它语言所说的泛型。

创建数组:

1、var aa:[String] = [“aa”,”bb”,”cc”] 或者 var aa = [“aa”,”bb”,”cc”]

2、var aa = [String]()  //空数组  aa.append(“aa”) //向aa数组添加一个成员。aa=[]  //清空数组

3、var a = [Double](count:5,repeatedValue:0.0)  //创建一个5个大小的数组,而且都赋值为0.0   ,因为swift类型判断的特性。还能够不用指定类型。var a = Array(count:5,repeatedValue:0.0)只是不推荐。

4、var a = [Double](count:5,repeatedValue:0.0);  var b = [Double](count:5,repeatedValue:5.5); var c = a + b; //将两个数组项合并到一个数组中去,类型会从相加的数组中判断出来。

数组的訪问和改动:

数组的操作莫过于加项,改动项,删除项。遍历项等操作。

var aa = [String]()

推断数组是否为空。aa.isEmpty() 

加到数组末尾:aa.append(“test”)  或者 aa += [“test1”]  或者  aa+=[“test2″,”test3”]

插入到某一个位置:aa.insert(“test2”,atIndex:0)


获取某一项:下标  var tt = aa[0]


改动: aa[0] = “new test” 还能够批量改  aa[4…6] = [“a”,”b”]


删除项:var removeItem = aa.removeAtIndex(0) 被移除的项会返回出来。

删除最后一个var removeItem = aa.removeLast()


遍历能够用for in循环。这个到for循环的时候再嘻嘻讨论。从上面append方法就能够看出数组是可变的。当然定义为let类型就不可变了。。


字典,也就是键值对。

无序存储  Dictionary<KeyType, ValueType>   KeyType的唯一限制就是可哈希的,这样能够保证它是独一无二的。全部的 Swift 基本类型(比如String,Int, Double和Bool)都是默认可哈希的


创建:1、通过字面量创建 var aa:Dictionary<String, String> = [“a”:”aaa”,”b”:”bbb”]   当然也可省略dictionary 写成 var aa =  [“a”:”aaa”,”b”:”bbb”] 

2、创建一个空字典 var aa =  Dictionary<String, String> ()  清空数据 aa = [:]   //比数组多了一个:号


读取:

1、字典大小  aa.count  count属性

2、下标获取  var tmp = aa[“a”]


改动:

1、下标改动 aa[“a”] = “abc”   //a这个key存在则改动,不存在则新增。

非常智能

2、方法改动   var oldValue = aa.updateValue(“bbccdd”,forKey:”b”)


移除

1、用nil进行移除: aa[“a”] = nil 就把key为a的移除了

2、方法移除: var oldValue = aa.removeForKey(“a”)  a这个key和存在的数据被移除了


遍历也是用for in循环。在for循环中讨论.


swift不像oc那样只在C语言的基础上外包一层面向对象,它真的很灵活也和其它的编程语言语法很相似。要使用它easy的。

版权声明:本文博客原创文章,博客,未经同意,不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117490.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 有关单片机的毕业设计_1500一套毕业设计贵吗

    有关单片机的毕业设计_1500一套毕业设计贵吗对大部分同学来说,毕业设计根本不知道从哪下手,完全处于蒙圈状态,为帮助大家能顺利毕业,精心准备800多套单片机毕业设计与您分享!其中有基于单片机设计的数字示波器、倒车雷达、电子密码锁、智能家居、停车场管理系统、万年历、智能插座等不同方向的典型设计实例,每个实例都提供了设计报告、源代码、电路图等全部设计资料,这些设计资料有利于即将毕业的同学分析、理解并进行毕业设计的制作和论文的编写。下载链接见:800多套单片机毕业设计-阿波罗代码网0001、PC机与单片机通信(RS232协议)000.

    2022年10月4日
    2
  • 向下取整和向上取整的符号_python向上取整函数

    向下取整和向上取整的符号_python向上取整函数向上取整,运算称为Ceiling,用数学符号⌈⌉(上有起止,开口向下)表示,。向下取整,运算称为Floor,用数学符号⌊⌋(下有起止,开口向上)表示。注意,向上取整和向下取整是针对有浮点数而言的;若整数向上取整和向下取整,都是整数本身。四舍五入:更接近自己的整数;把小数点后面的数字四舍五入 即:如被舍去部分的头一位数字小于五,则舍去;如大于等于五,则被保留…

    2025年8月24日
    16
  • (二)缺陷报告「建议收藏」

    (二)缺陷报告「建议收藏」当测试人员发现一个缺陷,需要填写一份“缺陷报告”来记录这个缺陷,并通过这个缺陷报告告知开发人员所发生的问题–缺陷报告是测试人员和开发人员交流沟通的重要工具。案例1:张三在测试案例1-2-1程序时,发现除数为0时程序异常退出,向开发组提交一份缺陷报告。一、缺陷报告的组成:①缺陷编号(DefectID):提交缺陷的顺序②缺陷标题(summary):简明扼要的描述缺陷③缺陷…

    2022年9月17日
    3
  • LeetCode 1. 两数之和 Two Sum「建议收藏」

    LeetCode 1. 两数之和 Two Sum「建议收藏」给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定nums=[2,7,11,15],target=9因为nums[0]+nums[1]=2+7=9所以返回[0,1] 解决方案方法一:暴力法暴力法很简单。遍历每个元素xxx,并查找是否…

    2022年6月2日
    31
  • Redis入门指南(第2版) – 电子书下载 -(百度网盘 高清版PDF格式)

    Redis入门指南(第2版) – 电子书下载 -(百度网盘 高清版PDF格式)Redis入门指南(第2版)-李子骅在线阅读百度网盘下载(z793)书名:Redis入门指南(第2版)作者:李子骅格式:EPUB,HTMLZ,PDF路径:点击打开排序作者:李子骅排序书名:Redis入门指南(第2版)日期:0812月2018uuid:ed21285a-4c67-40ce-b811-4d407b40b4a9id…

    2022年4月20日
    71
  • React多页面跳转[通俗易懂]

    React多页面跳转[通俗易懂]render(){const{app:{locationQuery}}=this.props;////////////tolist.jsconst{子页面数据}=this.state;const{id}=locationQuery;///获取当前页面地址栏的idconstinfo=queryA…

    2022年5月30日
    35

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号