为了账号安全,请及时绑定邮箱和手机立即绑定

swift if能判断nil吗

swift if能判断nil吗

MMMHUHU 2019-05-31 02:01:23
swift if能判断nil吗
查看完整描述

2 回答

?
慕虎7371278

TA贡献1802条经验 获得超4个赞

有好几种写法,比如某个变量 var x:Int?,可能存在一个值,比如0,也可能是nil,这种情况下可以这样写:

1

2

3

4

5

if let y = x {

print(y)

}else {

print("x 是 nil")

}

也可以这样写:

1

2

let y = x ?? 0 //这种情况下,如果x是nil则y == 0,否则直接等于 y 的值

print(y)

如果在函数内,也可以这样写:

1

2

3

4

5

guard let y = x else {

  // 可以 return 或者报错,等等

  throw someError

}

print(y)

除了上述方法之外,以下的方法是正确的,但是不推荐:

1

2

3

4

5

6

if x == nil {

 print("x 是空值")

}else {

 //可以肯定 x 不是空值的情况下才这么做

 print(x!)

}



查看完整回答
反对 回复 2019-06-01
?
开心每一天1111

TA贡献1836条经验 获得超13个赞

转义字符种特殊字符量转义字符反斜线"\"跟或几字符转义字符具特定含义同于字符原意义故称转义字符例前面各例题printf函数格式串用\n转义字符其意义车换行转义字符主要用表示些用般字符便于表示控制代码
用转义字符及其含义
转义字符 转义字符意义
\n 车换行
\t 横向跳制表位置
\v 竖向跳格
\b 退格
\r 车
\f 走纸换页
\\ 反斜线符"\"
\' 单引号符
\a 鸣铃
\ddd 1~3位八进制数所代表字符
\xhh 1~2位十六进制数所代表字符
广义讲C语言字符集任何字符均用转义字符表示表2.2\ddd\xhh提dddhh别八进制十六进制ASCII代码\101表示字?quot;A" \102表示字母"B"\134表示反斜线\XOA表示换行等





查看完整回答
反对 回复 2019-06-01
  • 2 回答
  • 0 关注
  • 642 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信