为什么我不能将余数分配给新变量??? JAVA

Why cant I assign a remainder to a new variable??? JAVA

    int d = year%100;
    int c = year/100;
    int valueA = (int)(((13*monthnumber)-1)/5);
    int valueB = (int) d/4;
    int valueC = (int) c/4;

    int weekDay = (d + valueA + d + valueB + valueC - 2*c);

    int remainder %= weekDay/7; 

我正在尝试使用模数赋值运算符,但不断收到系统错误,指出需要“=”而不是“%=”

有问题的代码是最后一行

请帮忙

因为 int remainder 你声明了一个变量,它的初始化不能用 %=

实现
int remainder %= weekDay/7; 

相当于

int remainder = remainder % weekDay/7; 

这没有任何意义,因为您刚刚声明了 remainder,因此它没有以前的值。

如果您之前声明了 remainder 变量,这将有效:

remainder %= weekDay/7; 

%= 不能用于尚未赋值的变量。

var %= {value};

等同于

var = var % {value};

但是在您使用它的方式中,remainder 还没有被赋值。所以没有意义。

您可能只是想这样做:

int remainder = weekDay % 7;