我有一个数字,我想在该数字的每两个连续数字之间插入一列“:”,并得到一个字符串
例如:
let number: Int = 34567
let result: String = "3:4:5:6:7"
感谢您的帮助
答案 0 :(得分:6)
可能的解决方案:
let result = String(number).map({ String($0) }).joined(separator: ":")
对中间结果进行解释,以帮助理解这3种链接方法的状况:
let interemdiary1 = String(number)
print("interemdiary1: \(interemdiary1)")
let interemdiary2 = interemdiary1.map({ String($0 )})
print("interemdiary2: \(interemdiary2)")
let interemdiary3 = interemdiary2.joined(separator: ":")
print("interemdiary3: \(interemdiary3)")
输出:
$>interemdiary1: 34567
$>interemdiary2: ["3", "4", "5", "6", "7"]
$>interemdiary3: 3:4:5:6:7
首先,让我们将number
转换为字符串。
然后,让我们创建一个数组,其中上一个结果的每个字符(作为String
)都是它的一个元素。我用了map()
。
最后,我们使用joined(separator:)
进行组装。
在那里可以找到另一种解决方案: How add separator to string at every N characters in swift?只是每1个字符要做一次。
答案 1 :(得分:1)
您需要通过:
使用此
let result = String(number).map({String($0)}).joined(separator: ":")