以下代码
BigInteger number=new BigInteger("2154789654785210095153123254756845");
boolean b=number.longValue()>Long.MIN_VALUE;
boolean c=number.longValue()<Long.MAX_VALUE;
boolean d=number.longValue()>=Integer.MIN_VALUE;
boolean e=number.longValue()<=Integer.MAX_VALUE;
System.out.println(""+b);
System.out.println(""+c);
System.out.println(""+d);
System.out.println(""+e);
Run Code Online (Sandbox Code Playgroud)
生成输出
true
true
false
true
Run Code Online (Sandbox Code Playgroud)
请记住,MAX_VALUE在Integer中实现之后,值会返回MIN_VALUE并再次循环,如果值为<=Integer.MAX_VALUE,那么它必须是>=Integer.MIN_VALUE,那么为什么布尔变量会d返回false?
java ×1