在java中使用模运算符
我想问一下如何使用模运算,有没有人能告诉我如何使用if语句,为什么要使用[==0],但我们可以将模计算的值赋给另一个变量 为什么下面的代码可以工作在java中使用模运算符,java,modulo,Java,Modulo,我想问一下如何使用模运算,有没有人能告诉我如何使用if语句,为什么要使用[==0],但我们可以将模计算的值赋给另一个变量 为什么下面的代码可以工作 int number = 100; if(number % 2 == 0) { sout(number); } 为什么不使用if也能起作用 lastDigit = number % 10; 为什么下面的语句不起作用 if(number % 2) { sout (n
int number = 100;
if(number % 2 == 0)
{
sout(number);
}
为什么不使用if也能起作用
lastDigit = number % 10;
为什么下面的语句不起作用
if(number % 2)
{
sout (number);
}
模运算符返回一个
int
,在这种情况下,它可以返回一个double
或long
,具体取决于操作数。if
语句需要布尔值。因此,如果(数字%2)不能执行,是因为没有布尔值。使用if(数字%2==0)
检查模运算符的结果是否为零,这是一个布尔值 编号%2
是一个无法通过任何方式计算为布尔值的表达式
15.17.3. 余数运算符%
二进制%运算符被称为从隐含除法中产生其操作数的剩余部分;左手操作数是被除数,右手操作数是除数
你似乎认为模的意思是“x可以被y整除,没有余数”——它的意思是“如果我把x除以y,余数是多少”。如果你不使用IDE(比如IntelliJ或Eclipse),这将是一个很好的开始。在IntelliJ中,如果(1%2){}
显示错误,则此代码显示不兼容类型。必需:boolean-Found:int
。Java中没有模运算符。这是余数运算符。精确地说,它可能重复,但并不总是int
。如果操作数是这样的类型(或者至少有一个是这样的)@Andrew Tobilko,那么它可以是一个浮点数。太棒了!我应该明确指出,在这种情况下,这将是一个intIt,也可能是一个long。你的答案需要集中在这些方面。