目录
1.Date类的使用
记住一点,无参代表系统当前时间,有参代表从时间原点过了参数的毫秒值的时间;
Date date=new Date(0L);
long time = date.getTime();
d.getTime()可以得到从原点到当前时间经过的毫秒值;
可以进行时间的比较;
2.SimpleDateFormat类的使用
Date date=new Date(0L);
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年mm月dd天");
String format = sdf.format(date);
System.out.println(format);
SimpleDateFormat sdf1=new SimpleDateFormat("yyyy年M月d日");
String time="2020年2月1日";
Date parse = sdf1.parse(time);
System.out.println(parse);
3.Calendar类的使用
这个一定要会,可以省好长时间;
要注意的两个事项:月份从0-11 表示1到12月
星期日为第一天
1.世纪末的星期
链接:1.世纪末的星期 - 蓝桥云课 (lanqiao.cn)
import java.util.Calendar;
public class DateTest {
public static void main(String[] args) {
Calendar c=Calendar.getInstance();
for (int y=2099;y<=9999;y+=100){
c.set(y,11,31);
if(c.get(Calendar.DAY_OF_WEEK)==1){
System.out.println(y);
break;
}
}
}
}
2.跑步训练
import java.time.DayOfWeek;
import java.util.Calendar;
import java.util.Date;
public class Test01 {
public static void main(String[] args) {
int num = 0;
Calendar c = Calendar.getInstance();
c.set(2000, 0, 1);
while(true){
if(c.get(Calendar.DAY_OF_WEEK)==2||c.get(Calendar.DAY_OF_MONTH)==1) {
num+=2;
}else {
num+=1;
}
if(c.get(Calendar.YEAR)==2020 && c.get(Calendar.MONTH)==9&&c.get(Calendar.DATE)==1) break;
c.add(Calendar.DATE, 1);
}
System.out.println(num);
}
}