首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检查值是否为零,并在NSdictionary中用空字符串替换它

检查值是否为零,并在NSdictionary中用空字符串替换它
EN

Stack Overflow用户
提问于 2021-12-07 06:14:38
回答 1查看 57关注 0票数 0

我不是iOS开发人员,而是选择目标c的rn开发人员。

我有,一个像这样的NSdictionry

代码语言:javascript
复制
NSDictionary *selfInfo = @{
    @"id": selfPartcipant.id,
    @"name": selfPartcipant.name,
    @"picture": selfPartcipant.picture,
    @"audioEnabled": @(selfPartcipant.audioEnabled),
    @"videoEnabled": @(selfPartcipant.videoEnabled),
    @"isPinned": @(selfPartcipant.isPinned)
};

在这里,selfPartcipant.nameselfPartcipant.picture可以是零(这将代码中断)。当值为零时,我想放空字符串。

在javascript中等效的内容应该如下所示

代码语言:javascript
复制
const a = {
  name: selfPartcipant.name || '', 
  picture: selfPartcipant.picture || '', 
  ...other properties
}

我怎样才能做到这一点?

EN

回答 1

Stack Overflow用户

发布于 2021-12-07 06:28:47

虽然Swift有一个零合并运算符??,但目标C没有,所以您最好的选择是使用这样的三元操作符:

代码语言:javascript
复制
NSDictionary *selfInfo = @{
    @"id": selfPartcipant.id,
    @"name": selfPartcipant.name ? selfPartcipant.name : @"",
    @"picture": selfPartcipant.picture ? selfPartcipant.picture : @"",
    @"audioEnabled": @(selfPartcipant.audioEnabled),
    @"videoEnabled": @(selfPartcipant.videoEnabled),
    @"isPinned": @(selfPartcipant.isPinned)
};

公平的警告,这是我写过的最客观的C,所以不能保证如果你复制和粘贴它会工作,但这个想法应该是坚实的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70255650

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档