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

Swift中NSMutableData无法赋值NULL,如何返回空或判断为空?

Swift中NSMutableData错误状态的标识与空数据判断

一、直接返回nil标识错误

你的方法返回类型是NSMutableData?(可选类型),完全可以直接返回nil来表示错误状态,不需要初始化空的NSMutableData。这样调用方能更直观地区分“错误无数据”和“正常生成的空数据”两种情况。

修正后的代码示例:

func generateData(input: URL) -> NSMutableData? {
    if errorCondition {
        // 用nil明确标识错误状态
        return nil
    }
    // 正常生成数据的逻辑
    let data = NSMutableData()
    // ... 向data中添加内容的操作
    return data
}

二、判断已返回的NSMutableData是否为空

如果因为某些原因必须返回空的NSMutableData,可以通过length属性判断是否为空:

  • NSMutableData继承自NSData,length属性表示数据的字节数,等于0即为空数据。

判断示例:

let result = generateData(input: someURL)
if let data = result {
    if data.length == 0 {
        // 处理空数据情况
    } else {
        // 处理有效数据
    }
} else {
    // 处理错误状态(如果返回nil的话)
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 22:48:51