您的位置:首页 > 编程语言 > Lua

lua: a and b or c,b=nil总返回c

2020-02-29 20:42 64 查看

刚开始用lua,在lua里,and or经常被当成?:来用,今天在写的时候就发现个问题:

a and  b or c, 假如b=nil,那么总返回c,与a无关,因为实际上是(a and b) or c,b=nil括号里就必然返回false了,但是我想得到的是nil,又不想写ifelse。

要么写成(not a)and c or b,放or后面b就可以为nil,但c不能为nil;要么写成 (a and {b} or {c} )[1],这样似乎猥琐了一点,不知道还有没有更好的写法

  • 点赞
  • 收藏
  • 分享
  • 文章举报
qq_32137401 发布了1 篇原创文章 · 获赞 0 · 访问量 437 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: