我正在处理一段代码,检查一个数字是否可以被2,12和15整除。
我第一次使用Java,我不明白如何使用它,所以我来到这里了!
import java.lang.*;
import java.math.*;
public class PrExMa {
public static void main(String[] args) {
//variables
BigInteger num;
BigInteger two, tw, fi;
num = new BigInteger("16");
two = new BigInteger("2");
tw = new BigInteger("12");
fi = new BigInteger("15");
//calculations
// problem is here,I am trying to do
if (num.mod(two).equals("0")) {
System.out.print(num);
// with if(num % two == 0) {
//system.out.print(num);
//}
}
}
}
答案 0 :(得分:5)
比较应写为:
num.mod(two).equals(BigInteger.ZERO)
否则,您要将BigInteger
与String
进行比较,这显然是不同的。另外,你真的必须使用BigInteger
吗?不是一个普通的long
吗?请记住,long
的最大值为2^63 - 1
,足以满足您的需求。在这种情况下,比较就像这样简单:
num % 2 == 0