You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Swift4中NSNumber转String及NSNumber数组转String数组适配UITableView

嘿,我来帮你搞定这两个Swift 4里的转换问题,顺便解决UITableView的显示需求~

1. 将NSNumber转换为String(Swift 4)

在Swift 4里把NSNumber转成String有两种常用方式,按需选择就行:

方式一:直接用NSNumber的stringValue属性

这是最简单的方式,直接获取NSNumber的字符串表示:

let myNumber: NSNumber = 68.208983
let stringResult = myNumber.stringValue
// stringResult的值是 "68.208983"

方式二:用NumberFormatter格式化输出(推荐需要控制格式时使用)

如果需要自定义显示格式(比如保留指定小数位数、添加千分位分隔符等),用NumberFormatter更灵活:

let myNumber: NSNumber = 68.208983
let formatter = NumberFormatter()
formatter.numberStyle = .decimal // 设置为十进制格式
formatter.maximumFractionDigits = 2 // 保留两位小数
formatter.minimumFractionDigits = 1 // 至少保留一位小数

if let formattedString = formatter.string(from: myNumber) {
    print(formattedString) // 输出 "68.21"
}
2. 将NSNumber数组转换为String数组并在UITableView中显示

针对你提供的示例数组,我们可以通过map或者compactMap快速完成转换,然后在UITableView的代理方法里赋值给cell:

步骤1:将Double数组转成NSNumber数组(如果你的原始数据是Double类型)

// 你的示例数组
let originalDoubleArray = [68.208983, 6.373902, 1.34085, 3.974012, 110.484001, 61.380001, 1.325202, 0.8501030000000001, 0.8501030000000001, 0.8501030000000001, 3.647296, 1.28503]
// 转换为NSNumber数组
let nsNumberArray = originalDoubleArray.map { NSNumber(value: $0) }

步骤2:将NSNumber数组转成String数组

方式一:直接转换(不格式化)

let stringArray = nsNumberArray.map { $0.stringValue }

方式二:格式化转换(自定义显示样式)

let formatter = NumberFormatter()
formatter.maximumFractionDigits = 3 // 保留三位小数
// 用compactMap过滤掉转换失败的情况(虽然NSNumber转String很少失败,但更安全)
let formattedStringArray = nsNumberArray.compactMap { formatter.string(from: $0) }

步骤3:在UITableView中显示

在tableView(_:cellForRowAt:)代理方法里,直接取数组对应位置的字符串赋值给cell的textLabel:

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    // 假设你的cell重用标识符是"NumberCell"
    let cell = tableView.dequeueReusableCell(withIdentifier: "NumberCell", for: indexPath)
    
    // 用格式化后的数组赋值
    cell.textLabel?.text = formattedStringArray[indexPath.row]
    
    return cell
}

内容的提问来源于stack exchange,提问作者SDK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:40:03