d的类型不是已经在上面一行声明了是Date类型吗?
哦,突然明白题主的意思了,题主的疑问是d没通过new Date()方式获得是不是d就不是Date类型了,是吧?
要关注方法的返回值类型。比如sdf.parse(line),它的返回类型是Date,返回的值赋给了d,所以d也是Date类型,这种方式并不需要new来获取。当然,你要先Date d=new Date();d=sdf.parse(line);也可以,但是这不多此一举了吗?
package Test20201227
import java.text.SimpleDateFormat
import java.util.Date
public class Test02 {
public static void main(String[] args) {
//新建日期对象 并设置时间为实时
Date date = new Date(System.currentTimeMillis())
//设置日期格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd")
//打印格式化以后的日期
System.out.println(sdf.format(date))
}
}
没分...555不过还是告诉你吧,要这样写public static void main(String args[]){
long a=new Date().getTime()
long b =1000
long l=b*60*60*24*356
System.out.println(a/l)
}
因为你原来的long b=1000*60*60*24*356这个式子的数字都是int型你这样转是不对的...
我的解决是先定义一个long型..然后进行向上匹配..得到long 型
问题就这样....运行过是38年