Swift 闭包排序算法

前端之家收集整理的这篇文章主要介绍了Swift 闭包排序算法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
闭包表达式是一种利用简洁的语法构建内敛的闭包的方式。闭包表达式提供了一些语法优化,使得撰写闭包变得简单明了。sort(_:)方法定义和语法优化的方式。每一次迭代都使用简洁的方式描述了相同的功能。

Swift标准库提供了名为sort的方法,会根据您提供的用于排序的闭包函数将已知类型数组中的值进行排序。一旦排序完成,sort(_:)方法会返回一个与原数组大小相同,包含同类型元素已正确排序的新数组。原数组不会被修改。

使用sort方法对一个String类型的数组进行字母逆序排序。下面是初始值:
let names = ["Chirs","Alex","Ewa","Barry","Daniella"]

sort(_:)方法接受一个闭包,该闭包函数需要传入与数组元素类型相同的两个值,并返回一个布尔类型值来表明当排序结束后传入的第一个参数排在第二个参数前面还是后面。如果第一个参数值出现在第二个参数值前面,排序闭包函数需要返回true,反之返回false 

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

import UIKit

var str = "Hello,playground"


let names = ["Chirs","Daniella"]

func backwards(s1: String,s2: String) ->Bool {
    
    return s1 > s2
}

var reversed = names.sort(backwards)

如果第一个字符串(s1)大于第二个字符串(s2)backwards(_:_:)函数返回true,表示在新的数组中s1应该出现在s2前。对于字符串的字符来说,“大于”表示“按照字母顺序较晚出现”.这意味着字母“B”大于字母“A”.字符串“Tom”大于字符串“Tim”.该闭包将进行字母排序,“Barry”将会排在“Alex”之前。
原文链接:https://www.f2er.com/swift/324759.html

猜你在找的Swift相关文章