java puzzlers 之长数据比较

        我们看下下面的比较(注明:加粗黑体是小写字母l)
        long a = 3601651991l;
        long b = (6*30*24*60*60*1000);
        System.out.println(a

      下面的输出结果总是false,跟我们想要的结果不一样。我们通过下面的代码测试一下:

        long b = (6*30*24*60*60*1000);
        System.out.println(b);
      发现结果输出为-1627869184  ,这里的错误是我们没把后面乘法的数字真正变成long类型的,通过下面的转变:

       long b = (6*30*24*60*60*1000l);
        System.out.println(b);
      我们可以看到输出为15552000000,好了我们可以改变最开始比较方式了,得到自己想要的结果:

        long a = 3601651991l;
        long b = (6*30*24*60*60*1000l);
        System.out.println(a
      遇到这种大/长类型数据进行比较的时候要把他变成统一的long类型。

你可能感兴趣的:(JAVA)