lua 三目运算符实现

作者: 90d81be3ec65 | 来源:发表于2018-02-28 19:18 被阅读71次
  • 预备知识
    lua中逻辑运算符有and、or、not,与其他语言的逻辑运算一致;
    所有运算符视false和nil为假,其他都为真;
    对于and运算符,如果第一个条件为假,则返回第一个操作数,否则返回第二个操作数(注意:无论第二个操作数是什么,这和其他有些语言返回false有区别);
    -- for example
    local a = false
    print(a and 1) --输出false
    a = nil
    print(a and 1) --输出nil
    a = true
    print(true and false) --输出false
    print(true and nil) --输出nil
    print(true and 1) --输出1
    
    对于or运算符,如果第一个条件为真,则返回第一个操作数,否则返回第二个操作数,例子同上,有兴趣的小伙伴可以亲身实操一下;

  • 进入正题
    三目运算符两种写法:
    1. (a and {b} or {c})[1]
    2. a and b or c,这种写法的前提是b不为假。正如预备知识所说,当a为真的时候and操作符会返回第二个操作数b,而当b也为假的时候,or操作符会返回第二个操作数c,而不是我们想要的b,第一种写法通过给b加一层{},能够确保{b}必定为真。当程序员编码时候确认b为真,那么提倡第二种写法,简单粗暴

相关文章

  • lua 三目运算符实现

    预备知识lua中逻辑运算符有and、or、not,与其他语言的逻辑运算一致;所有运算符视false和nil为假,其...

  • 18_三目运算符和逗号表达式

    关键词:三目运算符、 三目运算符(a?b:c) 的返回类型、逗号表达式、一行代码实现strlen 1. 三目运算符...

  • 2018-08-02

    lua语言中使用的小技巧 lua语言虽然没有C/C++语言式的三目运算,但是我们可以通过它短路式的逻辑方式实现三目...

  • 8.JavaScript-三目运算符

    1.什么是三目运算符? 三目运算符又称之为条件运算符 2.三目运算符格式 当条件为真(true)时,返回结果A当条...

  • Python的三元算符和lambda表达式

    三元运算符 Python中没有其他语言的三元表达式,俗称三目运算符.但是可以通过if else的方式实现类似的效果...

  • Java入门:运算符

    Java运算符 运算符的运算对象成为操作数,根据操作数的个数把运算分为: 单目运算符 双目运算符 三目运算符 单目...

  • Python中的三目运算符的作用、语法、示例

    这篇文章介绍三目运算符的作用、语法、利用例子体验一下三目运算符。 三目运算符的作用: 化简代码量的,化简的是非常简...

  • 判断有无封面

    使用三目运算符

  • C++<第三篇>:运算符

    根据使用运算符的对象个数,将运算符分为单目运算符、双目运算符、三目运算符。根据使用运算符的对象之间的关系,C++ ...

  • 运算符

    Lua运算符 运算符是一个特殊的符号,用于告诉解释器执行特定的数学或逻辑运算 Lua提供了以下几种运算符类型:算术...

网友评论

    本文标题:lua 三目运算符实现

    本文链接:https://www.haomeiwen.com/subject/xxcmxftx.html