运算符差:+ =,==,+,++,=

问题描述 投票:-1回答:3

我正在学习如何使用开关,但是我使用了不同的运算符,因此无法运行peogram。仅=运算符起作用。为什么在这种情况下其他运算符(+===+++)不起作用?

我是Java的初学者,请帮助我解决这个幼稚的问题...

double shippingCost;

switch (shipping) {
  case "Regular":
    shippingCost + 0;
    break;
  case "Express":    
    shippingCost + 1.75;
    break;
  default:
    shippingCost + .50; 
}

return shippingCost;
java operators
3个回答
1
投票

您现在正在制作表达式,您要做的就是将表达式分配给某些东西。

为了更好地理解代码

shippingCost + 1.75 

返回一些值,您想要做的就是将它分配给某些东西。

如果您希望该值等于该值加上一些东西,则正确的语法为

variable += value

因此,在您的示例中,您可能需要

shippingCost += 1.75

如果您想使用

==

您可以将其视为返回布尔值(又称为true或false值)的表达式。您可以使用与任何值相同的方式将其分配给变量。或者,您可以只使用该值。


0
投票

这些都不是完整的陈述。以下是完整语句的示例:

shippingCost = 0;

shippingCost++;

shippingCost += 2;

if(shippingCost == 3)
  do();

这不是声明:

shippingCost + 1;

除非您包含其他类似利用值结果的内容:

double newShippingCost = shippingCost + 1;

print(shippingCost + 1);

这不是Java中合法的完整语句,它不能计算结果,而对其不执行任何操作。我一开始就给出的完整语句示例对结果有所帮助。他们大多将结果(返回)存储到shippingCost变量中


0
投票

在Java中

a += 5; // is equivalent to a=a+5;

==仅用于比较,

say if(a==b) { //do something}

++用于递增通常为整数的数字

int a=1;
a++; //a=2 after running this statment.
© www.soinside.com 2019 - 2024. All rights reserved.