我想把Swift中的Int
转换成带前导零的String
.例如,考虑这个代码:
for myInt in 1 ... 3 {
print("\(myInt)")
}
目前的结果是:
1
2
3
但我希望它是:
01
02
03
在Swift标准库中是否有一种干净的方法来实现这一点?
我想把Swift中的Int
转换成带前导零的String
.例如,考虑这个代码:
for myInt in 1 ... 3 {
print("\(myInt)")
}
目前的结果是:
1
2
3
但我希望它是:
01
02
03
在Swift标准库中是否有一种干净的方法来实现这一点?
假设您希望字段长度为2,前导零为0,您可以这样做:
import Foundation
for myInt in 1 ... 3 {
print(String(format: "%02d", myInt))
}
输出:
01 02 03
这需要import Foundation
,所以从技术上讲,它不是Swift语言的一部分,而是Foundation
框架提供的一种能力.请注意,import UIKit
和import Cocoa
都包含Foundation
,因此如果已经导入Cocoa
或UIKit
,则无需再次导入.
格式字符串可以指定多个项目的格式.例如,如果你试图将3
小时15
分7
秒的时间格式化为03:15:07
秒,你可以这样做:
let hours = 3
let minutes = 15
let seconds = 7
print(String(format: "%02d:%02d:%02d", hours, minutes, seconds))
输出:
03:15:07