公历类GregorianCalendar和日期类Date

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_44593822/article/details/102631777

自动导包:Ctrl+Shift+O

使用公历类 GregorianCalendar,公历类 GregorianCalendar有方法setTimeInMillis(long);可以用它来设置从1970年1月1日算起的一个特定时间。请编程从键盘输入一个长整型的值,然后输出对应的年、月和日。例如输入:1234567898765,输出:2009-1-14

输入格式:

输入

1234567898765 (毫秒数)

输出格式:

输出

2009-1-14 (输出年、月和日,实际应该是2月,因为Java API 从0开始计算月份)

输入样例:

1450921070108

输出样例:

2015-11-24

 代码如下:

import java.util.GregorianCalendar;
import java.util.Scanner;

public class 公历类GregorianCalendar {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		Scanner in=new Scanner(System.in);
		long time=in.nextLong();//毫秒
		GregorianCalendar d=new GregorianCalendar();
		d.setTimeInMillis(time);
		System.out.println(d.get(d.YEAR)+"-"+d.get(d.MONTH)+"-"+d.get(d.DAY_OF_MONTH));
	}

}

 利用日期类,计算今天是开学的第几周的的第几天

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Date_Test {

	public static void main(String[] args) throws ParseException {
		// TODO 自动生成的方法存根
		String date="2019-08-26";
		Date current = new Date();
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//固定格式yyyy-MM-dd
		Date pass = sdf.parse(date);//将字符串日期解析成Date对象
		long passtime = pass.getTime();//开学时间
		long currenttime = current.getTime();//现在的时间
		long subtract_time = currenttime - passtime;//从开学到现在的时间,返回的是毫秒数!
		int day = (int) (subtract_time / 1000 / 60 / 60 / 24);//总共的天数
		int week = day / 7 + 1;
		System.out.println("这是第" + week + "周第" + (day + 1) % 7 + "天");

	}

}

猜你喜欢

转载自blog.csdn.net/weixin_44593822/article/details/102631777