这是我的代码:
h[ht] * sth -= 3;
“*”给我一个错误:
令牌“*”上的语法错误,AssignmentOperator
无效
我需要将h [ht] * sth的值减少3
答案 0 :(得分:2)
您的示例无效,因为" - ="实际上是一种契约形式:
int a = 1;
a -= 1;
// the above line is the same as:
a = a - 1
将计算分配给其他内容:
int a = (h[ht] * sth) - 3
答案 1 :(得分:0)
你在尝试的是语法错误。
我认为h[ht]
和sth
是两个不同的变量,您希望将结果减少3个。
基本上这是编译时错误,因此无法编译。正确?
为了达到这个目的,你需要把它分成两个不同的语句,即
int/long/float/double temp = h[ht] * sth;
temp-=3;
或者你也可以这样做( h[ht] * sth )-3
您将能够实现您想要的目标。
请阅读here.并让我告诉您Java的编译器是使用此语法实现的,因此如果任何语句不遵循这些语法规则,则会导致语法错误。
我希望您的问题能得到解决。 谢谢