Swift5 字符(Character) *** 作

Swift5 字符(Character) *** 作,第1张

Swift5 字符串(String) *** 作
Swift5 字符(Character) *** 作
Swift5 数组(Array) *** 作
Swift5 字典(Dictionary) *** 作
Swift5 集合(Set) *** 作
Swift5 简单使用
Swift OC动态调试工具 InjectionIII 使用

swift集合提供了很多遍历的函数用来对元素进行访问及 *** 作,并大量应用了闭包。
重点需要了解的函数有:
forEach、filter、map、reduce
forEach:循环遍历集合中的元素,相当于for-in 快速遍历
let values = [5, 3, 2, 3,1]
valuesforEach {
print("element is ($0)")
}
filter:/
函数原型:
func filter(_ isIncluded: (Element) -> Bool) -> [Element]
按照规则过滤原数组
/
var values = [15, 10, 488, 32, 8]

let res = valuesfilter {
return $0 > 4
}
//res 是values数组里 所有大于4 的元素组成的新数组

map:/
函数原型:
studentsmap(<#T##transform: (String) throws -> T##(String) throws -> T#>)
数组映射
/

let input = ["0", "12", "name", "hi", "3"]
let number = inputmap {
Int($0) //将元素转换为Int型
}
//注意类型转换可能失败,所以返回的是可选型
//[Optional(0), Optional(12), nil, nil, Optional(3)]
/
另外一个高度近似的函数
flatMap
隐含了两种 *** 作
1解包
2展开并合并
/

let flatNumber = inputflatMap() {
Int($0)
}
//[0, 12, 3]

reduce:
let numbers = [1, 2, 3, 4]
let numberSum = numbersreduce(0, { x, y in
x + y
})
// numberSum == 10

flatMap是在map的基础上增加新的功能
空值过滤:调用flatMap生成的新数组,过滤了nil值的元素。

强解包:flatMap自动做了解包工作,不用再去解包元素。

数组压平,解嵌套数组(把二维数组变成一维数组)

可以把数组变成一个元素。先指定一个初始值,然后在闭包中写一个规则。reduce就会递归调用数组的元素进行闭包运算。直到最后算出一个结果。

与prefix和suffix互补的方法,获得删除从头部或尾部开始的区间后的数组


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13355964.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-20
下一篇 2023-07-20

发表评论

登录后才能评论

评论列表(0条)

保存