JustinJie
V2EX  ›  Java

在 Java 里什么时候使用三目运算比较好?

  •  1
     
  •   JustinJie · Dec 15, 2017 · 4978 views
    This topic created in 3256 days ago, the information mentioned may be changed or developed.

    想请问各位大牛,在 Java 编程中,何时使用三目运算,何时使用 If-else 比较好?或者其他经验也可以分享~

    14 replies  •  2017-12-16 09:02:09 +08:00
    ke1e
    ke1e
    Dec 15, 2017
    1
    给一个变量赋值但是这个变量有临界值的时候
    arclin16
    arclin16
    Dec 15, 2017 via iPhone
    2
    同意楼上
    honeycomb
    honeycomb
    Dec 15, 2017 via Android
    3
    这个运算符当它是个语法糖,用来让表达式简化(具体适用范围楼上已经说清楚了)的。
    如果对你而言它不比 if else 更好的话,没有必要逼着自己去用。
    gbin
    gbin
    Dec 15, 2017
    4
    三目元算简洁,if-else 可读性高。
    SuperMild
    SuperMild
    Dec 15, 2017
    5
    感觉一行可以写下的就先写三目,写完看着不顺眼就改成 if else,看着顺眼就保留。
    cuebyte
    cuebyte
    Dec 15, 2017
    6
    Java 的 if-else 没有返回值,三目就是有返回值的 if-else
    lihongjie0209
    lihongjie0209
    Dec 15, 2017
    7
    当 Idea 提示你可以简化 If 的时候. 写代码的时候不要考虑这种细节问题, 跑起来和逻辑正确是最基本的要求, 其次是可读性, 最后是你的个人喜好.
    padeoe
    padeoe
    Dec 15, 2017❤️2
    8
    Java 三目操作符有时候挺不直观的,譬如:
    System.out.println(true ? 'a' : 97);
    System.out.println(true ? 'a' : 65536);
    分别输出 a 和 97。
    我可能并不是唯一一个搞不清的,最好还是 if-else 吧。之前写过一篇博客介绍:
    https://padeoe.com/the-type-of-conditional-expression-in-java/
    misaka19000
    misaka19000
    Dec 15, 2017
    9
    想用的时候就用 不用那么死板的
    zhx1991
    zhx1991
    Dec 16, 2017
    10
    简洁无歧义的时候

    语法糖用起来不是让人难懂的
    riggzh
    riggzh
    Dec 16, 2017
    11
    @padeoe 97 单纯是 a 的 ascii 而已,请多用双引号来表达字符
    riggzh
    riggzh
    Dec 16, 2017
    12
    @padeoe JAVA 中的单引号如果没记错 只有 char 才会用单引
    vegito2002
    vegito2002
    Dec 16, 2017
    13
    比较短的时候就可以用, 超过一行就不要用了. 最好:两边的内容有一定的对称性, 这样看起来易读一些, 不过其实也不是强求
    metorm
    metorm
    Dec 16, 2017 via Android
    14
    需要根据条件初始化常量的时候
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1107 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 50ms · UTC 23:44 · PVG 07:44 · LAX 15:44 · JFK 18:44
    ♥ Do have faith in what you're doing.