我正在进行旧测试以进行测试,此代码为longVariable打印10的值.现在,手工,对我来说,数学将是9 + 1%10 = 0的余数,而不是10 ......我怎么错了?
谢谢你的帮忙!
public class ExamSectionA
{
public static void main(String[] args)
{
int intVariable1 = 9;
int intVariable2 = 10;
double doubleVariable = 11.2;
char charVariable = 'A';
long longVariable;
longVariable = intVariable1 + 1 % intVariable2;
intVariable2 = (int) (doubleVariable / 10f);
String[] theirSalary = {"10","20","30","40"};
System.out.println(intVariable2);
System.out.println(longVariable);
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:PEMDAS.以为我明白了.
Mys*_*ial 14
观察您的运营顺序:
intVariable1 + 1 % intVariable2;
Run Code Online (Sandbox Code Playgroud)
是:
intVariable1 + (1 % intVariable2);
Run Code Online (Sandbox Code Playgroud)
所以9 + 1 % 10被解析为9 + (1 % 10).这给了9 + 1 = 10.
%优先级高于+.
| 归档时间: |
|
| 查看次数: |
176 次 |
| 最近记录: |