首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Swift 4将零jsonElement改为空字符串

Swift 4将零jsonElement改为空字符串
EN

Stack Overflow用户
提问于 2018-04-04 13:43:04
回答 2查看 143关注 0票数 2

根据标题,我对此没有任何运气,我已经通过将任何可能为零的内容放入到自己的if let中来对nil元素进行了一个小的修正,但是我希望它成为一个空字符串,而不是一个空字符串,因为我以后需要使用它。(我想?)

代码语言:javascript
复制
if let studentID = jsonElement["S_ID"] as? String,
let firstName = jsonElement["FirstName"] as? String,
let surname = jsonElement["Surname"] as? String,
let displayPicture = jsonElement["StudentPicture"] as? String,
let dateOfBirth = jsonElement["DateofBirth"] as? String
{
    student.studentID = studentID
    student.firstName = firstName
    student.surname = surname
    student.displayPicture = displayPicture
    student.dateOfBirth = dateOfBirth
    //    student.father = father
    //    student.guardian = guardian
    //   student.keyPerson = keyPerson
}

if let mother = jsonElement["Mother"] as? String
{
    student.mother = mother
}

我对iOS编程很在行,请温柔点。我试着读过类似的话题,但没能让它起作用。谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-04 13:48:46

您可以使用else部件来处理nil值。

代码语言:javascript
复制
if let mother = jsonElement["Mother"] as? String {
    student.mother = mother
} else {
    student.mother = ""
}
票数 1
EN

Stack Overflow用户

发布于 2018-04-04 13:46:42

只需提供一个默认值,例如:

代码语言:javascript
复制
student.studentID = (jsonElement["S_ID"] as? String) ?? ""

请参阅Swift中https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/BasicOperators.html的Nil-聚结运算符部分的更多内容:

如果一个可选的a包含一个值,则为零合并操作符a;如果是nil,则返回一个默认值b。表达式a 始终是可选类型。表达式b必须与存储在a中的类型匹配。

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

https://stackoverflow.com/questions/49652612

复制
相关文章

相似问题

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