我正在创建两个巨大的BigInteger,然后他们。但是和操作不起作用,而是返回0.为什么?Java BigInteger.and不适用于大数字?
BigInteger aa = new BigInteger("213092840173096182527577008347205670468257779233261101799142588416");
BigInteger bb = new BigInteger("226156424291633194186662097633113218007386784142018559245972777080014766080");
System.out.println(aa.and(bb));
输出:0
我做了一个BigInteger '或' 在这两个数字和 '或' 运转正常工作。其他人看到同样的问题?
请注意,我正在使用jdk 1.8。
虽然这将是非常随机的,这些数字实际上和0的任何可能性?不大可能,但可能。 –
是的..我的想法正是如此。我想知道预期结果是什么 – odedsh
就是这样。我在控制台中以十进制格式打印两个数字,并感到困惑。我后来设法用十六进制打印它们,并看到它们的确是零。我的错! – Shubhojit