长整除
public class LongDivision{
public static void main(String[] args){
final long MICROS_PER_DAY = 24*60*60*1000*1000;
final long MILLIS_PER_DAY = 24*60*60*1000;
System.out.println(MICROS_PER_DAY/MILLIS_PER_DAY);
}
}
大家看下这个答案是什么?当然肯定不是1000答案是5到底发生了什么?这是因为虽然存放数据是long型然而计算却是用int计算的,当计算完成后才提升为long型,这个时候已经迟了为什么计算是int计算,因为所以乘数都是int型,java是不具有目标明确类型的特性为了避免这个问题应该使用L后记来避免