Swift 语言字符串排序程序
在 Swift 中,字符串排序指的是按照指定顺序(升序或降序)排列字符串中的字符。例如:
Input: String = "color of the bird is pink"
Output:" bcdefhiiiklnoooprrst"
这里,结果字符串按升序排序。
因此,为了排序字符串,Swift 提供了一个内置函数名为 sorted()。此函数返回一个排序后的字符串,其中字符串的字符存储为升序或降序。此函数可以用两种类型定义:带参数和不带参数。
请注意,sorted() 函数不会删除空格字符,它会将所有空格字符放在结果字符串的开头。
语法 1
func sorted() or func sorted(by:)
此函数不带任何参数,并返回按升序排序的字符串。
语法 2
func sorted(by:)
这里,此函数仅接受一个参数,即 > 或 < 运算符。如果我们在“by”参数中传递 < 运算符,则此方法会按升序排序字符串。如果我们在“by”参数中传递 > 运算符,则此方法会按降序排序字符串。
算法
步骤 1 - 创建一个函数,该函数接收一个输入字符串并返回一个存储的字符串。
步骤 2 - 在函数内部,我们使用 sorted() 函数对字符串进行排序。
步骤 3 - 然后使用 String() 初始化器将其转换为字符串,并返回结果。
步骤 4 - 创建一个输入字符串。
步骤 5 - 调用该函数并将字符串传递给它。
步骤 6 - 显示输出。
示例 1
在下面的 Swift 程序中,我们将对字符串进行排序。因此,创建一个函数,该函数将输入字符串作为参数并返回一个排序后的字符串。在函数内部,我们将使用 sorted() 函数按升序排序字符串的所有字符。之后,使用 String() 初始化器将结果转换为字符串并返回结果字符串。
import Foundation import Glibc func sortString(Str: String) -> String { let sortedStr = Str.sorted() return String(sortedStr) } let enteredString = "ronita sing song" let resultantString = sortString(Str:enteredString) print("Original String:", enteredString) print("Sorted String:", resultantString)
输出
Original String: ronita sing song Sorted String: aggiinnnoorsst
示例 2
在下面的 Swift 程序中,我们将对包含大小写字符的字符串进行排序。因此,创建一个函数,该函数将输入字符串作为参数并返回一个排序后的字符串。在函数内部,首先,我们使用 lowercased() 函数将字符串转换为小写,然后使用 sorted() 函数按升序排序字符串的所有字符。之后,使用 String() 初始化器将结果转换为字符串并返回结果字符串。
import Foundation import Glibc func sortString(Str: String) -> String { let newStr = Str.lowercased() let sortedStr = newStr.sorted() return String(sortedStr) } let enteredString = "Sohan like iceCream" let resultantString = sortString(Str:enteredString) print("Original String:", enteredString) print("Sorted String:", resultantString)
输出
Original String: Sohan like iceCream Sorted String: aacceeehiiklmnors
示例 3
在下面的 Swift 程序中,我们将按降序对字符串进行排序。因此,创建一个函数,该函数将输入字符串作为参数并返回一个排序后的字符串。在函数内部,我们将使用带有“by:>”参数的 sorted(by:>) 函数按降序排序字符串的所有字符。之后,使用 String() 初始化器将结果转换为字符串并返回结果字符串。
import Foundation import Glibc func sortString(Str: String) -> String { let sortedStr = Str.sorted(by:>) return String(sortedStr) } let enteredString = "machine works fine" let resultantString = sortString(Str:enteredString) print("Original String:", enteredString) print("Sorted String:", resultantString)
输出
Original String: machine works fine Sorted String: wsronnmkiihfeeca
结论
这就是我们如何对字符串进行排序。这里的 sorted() 方法仅按升序对字符串进行排序。如果要按升序或降序对字符串进行排序,则可以使用 sorted(by:) 函数。在升序排序中,字符的优先级是空格字符、特殊字符、大写字母,然后是小写字母。