【问题标题】:Conditional operator in Java [duplicate]Java中的条件运算符[重复]
【发布时间】:2018-03-21 19:52:26
【问题描述】:

执行下面的程序会产生下面的结果,请解释为什么sum的值为120,而price的值为100。

double sum=10, price =100;
sum+=price>=100?price * 1.1 : price;
Syso(sum);
Syso(price);

输出是 120 100

【问题讨论】:

  • 系统?你是说 System.out.println 吗?
  • (1) 这听起来像是一道作业题。 (2) Syso 不存在。 (3) 请先展示自己的进度。
  • 条件是价格等于或大于 100,然后将价格乘以 1.1。这里条件为真,所以 sum=10(旧总和)+110(相乘后的价格),所以结果是 sum=120 但是乘以价格没有分配给价格,因此它不会改变并显示价格=100

标签: java conditional operator-keyword


【解决方案1】:
expression ? value 1 : value 2

if expression is true, result is value 1(第一个条件)

if expression is false ,result is value 2(第二个条件)

例子:

x = 1, x > 10 ? x : 10

表达式:x > 10 => false

值 1:x 值 2:10

结果是10

【讨论】:

    猜你喜欢
    • 2014-08-09
    • 2021-04-22
    • 2010-10-12
    • 1970-01-01
    • 1970-01-01
    • 2012-05-26
    • 2010-10-02
    • 1970-01-01
    • 2013-06-20
    相关资源
    最近更新 更多