Java实例——Java时间处理

转:https://www.runoob.com/java/java-examples.html

Java实例——Java时间处理

日期和时间模式(注意大小写,代表的含义是不同的):
yyyy:年
MM:月
dd:日
hh:1~12小时制(1-12)
HH:24小时制(0-23)
mm:分
ss:秒
S:毫秒
E:星期几
D:一年中的第几天
F:一月中的第几个星期(会把这个月总共过的天数除以7)
w:一年中的第几个星期
W:一月中的第几星期(会根据实际情况来算)
a:上下午标识
k:和HH差不多,表示一天24小时制(1-24)
K:和hh差不多,表示一天12小时制(0-11)
z:表示时区

1、格式化时间(SimpleDateFormat)

		//格式化时间——SimpleDateFormat
		Date date1 =new Date();//默认当前时间
		String strFormat ="yyyy-HH-dd HH:mm:ss";
		SimpleDateFormat sdf =new SimpleDateFormat(strFormat);//时间格式化
		Date date2 =sdf.parse("2018-06-07 12:12:06");//字符串转换日期
		System.out.println("当前时间:"+sdf.format(date1));
		System.out.println("设置的时间:"+sdf.format(date2));
执行结果:
当前时间:2019-10-13 10:22:02
设置的时间:2018-12-07 12:12:06

2、获取当前时间——new Date()

3、获取年份、月份等——Calendar抽象类

		//获取年份、月份等——Calendar抽象类
		Calendar c =Calendar.getInstance();//默认当前时间
		c.set(2019, 6 -1, 12);//设置当前年月日为:2019、6、12
		c.set(Calendar.DATE, 10);//日期设置为10号
		c.add(Calendar.DATE, 10);//10天后的日期
		Integer day =c.get(Calendar.DATE);//日期
		Integer month =c.get(Calendar.MONTH)+1;//月份
		Integer year =c.get(Calendar.YEAR);//年份
		Integer dow =c.get(Calendar.DAY_OF_WEEK);
		Integer dom =c.get(Calendar.DAY_OF_MONTH);
		Integer doy =c.get(Calendar.DAY_OF_YEAR);
		Integer hour =c.get(Calendar.HOUR);//12小时制的小时
		//使用set,add关键字修改时间
		System.out.println("当期时间:"+c.getTime());
		System.out.println("日期: "+day);
		System.out.println("月份: "+month);
		System.out.println("年份:"+year);
		System.out.println("一周的第几天:"+dow);
		System.out.println("一月中的第几天:"+dom);
		System.out.println("一年的第几天:"+doy);
		System.out.println("当前的12制小时:"+hour);
执行结果:
当期时间:Thu Jun 20 10:26:33 CST 2019
日期: 20
月份: 6
年份:2019
一周的第几天:5
一月中的第几天:20
一年的第几天:171
当前的12制小时:10

4、时间戳转换成时间

使用 SimpleDateFormat 类的 format() 方法将时间戳转换成时间。

		//时间戳转换成时间
		Long timestap =System.currentTimeMillis();//获取当前时间戳
		SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//格式化时间
		String sd =sdf.format(new Date(Long.parseLong(String.valueOf(timestap))));//时间戳转换成时间
		System.out.println("格式化结果:"+sd);
		SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy 年 MM 月 dd 日 HH 时 mm 分 ss 秒");//格式化时间
		String sd2 =sdf2.format(new Date(Long.parseLong(String.valueOf(timestap))));//时间戳转换成时间
		System.out.println("格式化结果:"+sd2);
执行结果:
格式化结果:2019-08-13 10:28:13
格式化结果:2019 年 08 月 13 日 10 时 28 分 13 秒
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值