[英]How to convert Range Int Array to String Array in Swift efficiently?
I create a range of in from 1-100 doing this: 我这样做的范围是1-100。
let array = [Int](1...10)
Now how do I convert that into a String array as I need it for UIPickerView 现在如何将其转换为String数组,以用于UIPickerView
Thanks in advance. 提前致谢。
var arr = [1,2,3]
let strArr = arr.map{String($0)}
OR in picker you may return the component title like this 或在选择器中,您可以像这样返回组件标题
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
return "\(arr[row])"
}
您可以直接将Int
范围map
到String
数组
let stringArray = (1...10).map(String.init)
If it is just a sequence of strings "1", "2", .. you can simply get it using map
: 如果只是一个字符串序列“ 1”,“ 2”,..,则可以使用
map
来简单地获取它:
let model = array.map { "\($0)" }
If you are looking for spelled out numbers, such as "one", "two", ..., use number formatter: 如果要查找拼写数字,例如“一个”,“两个”,...,请使用数字格式化程序:
let numberFormatter: NumberFormatter = NumberFormatter()
numberFormatter.numberStyle = NumberFormatter.Style.spellOut
let model = array.map { numberFormatter.string(from: NSNumber(value: $0)) ?? "" }
好吧,你可以这样做:
let formattedArray = ([0,1,1,0].map{String($0)}).joined(separator: ",")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.