JAVA里的Date.getTime()方法问题

问:

public static void main(String args[]){
  long a=new Date().getTime();
  long b=1000*60*60*24*365;
  System.out.println(a/b);
}
我算的是从1970年到现在经过了多少年的方法.
这样做有什么错?为什么打印出来是1700多。..现在顶多离1970年才38年而已啊。

 

答案:

public static void main(String args[]){
long a=new Date().getTime();
long b =1000;
long l=b*60*60*24*365;
System.out.println(a/l);
}
因为你原来的long b=1000*60*60*24*356;这个式子的数字都是int型你这样转是不对的...
我的解决是先定义一个long型..然后进行向上匹配..得到long 型
问题就这样....运行过是38年
 

 

 

你可能感兴趣的:(java,java,string,date)