Java获取当前年月日、时间[通俗易懂]

Java获取当前年月日、时间[通俗易懂]两种方法,通过Date类或者通过Calendar类。Date类比较简单,但是要得到细致的字段的话Calendar类比较方便。importjava.text.DateFormat;importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;importjava.util.L

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

两种方法,通过Date类或者通过Calendar类。Date类比较简单,但是要得到细致的字段的话Calendar类比较方便。

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;

import org.junit.Test;


public class GetTimeNow {

	/**
	 * 通过Calendar类获取
	 */
	@Test
	public void getTimeNowThroughCalendar(){
		//使用默认时区和语言环境获得一个日历。
		Calendar    rightNow    =    Calendar.getInstance();   
		/*用Calendar的get(int field)方法返回给定日历字段的值。
		HOUR 用于 12 小时制时钟 (0 - 11),HOUR_OF_DAY 用于 24 小时制时钟。*/
		Integer year = rightNow.get(Calendar.YEAR); 
		Integer month = rightNow.get(Calendar.MONTH)+1; //第一个月从0开始,所以得到月份+1
		Integer day = rightNow.get(rightNow.DAY_OF_MONTH);
		Integer hour12 = rightNow.get(rightNow.HOUR); 
		Integer hour24 = rightNow.get(rightNow.HOUR_OF_DAY);
		Integer minute = rightNow.get(rightNow.MINUTE);
		Integer second = rightNow.get(rightNow.SECOND);
		Integer millisecond = rightNow.get(rightNow.MILLISECOND);
		String TimeNow12 = year+"-"+month+"-"+day+" "+hour12+":"+minute+":"+second+":"+millisecond;
		String TimeNow24 = year+"-"+month+"-"+day+" "+hour24+":"+minute+":"+second+":"+millisecond;
		 System.out.println("日历:"+rightNow+"\n12小时制时钟:"+TimeNow12+"\n24小时制时钟:"+TimeNow24);
	}
	
	/**
	 * 通过Date类获取
	 */
	@Test
	public void getTimeNowThroughDate(){
		Date date=new Date();
		DateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SS");
		System.out.println(format.format(date));
		//DateFormat类的静态工厂方法
		System.out.println(format.getInstance().format(date));
		System.out.println(format.getDateInstance().format(date));
		System.out.println(format.getTimeInstance().format(date));
		System.out.println(format.getDateTimeInstance().format(date));
		
		//DateFormat带参数的静态工厂方法
		//第一个参数是静态变量style有4中取值0、1、2、3分别对应SHORT、MIDIUM、LONG、FULL
		//第二个参数根据环境敏感的Locale类的静态变量自定义输出
		System.out.println(format.getDateInstance(0, Locale.CHINA).format(date)); 
		System.out.println(format.getTimeInstance(0,Locale.CHINA).format(date));
		
		System.out.println(format.getDateTimeInstance(2,2).format(date));  
		}
	
	/**
	 * 两者结合。。。
	 */
	@Test
	public void getTimeNowTogether(){
		String TimeNow = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SS").format(Calendar.getInstance().getTime());
		System.out.println(TimeNow);
	}
	
}

Jetbrains全家桶1年46,售后保障稳定

三种方法分别输出:

日历:java.util.GregorianCalendar[time=1454251772565,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2016,MONTH=0,WEEK_OF_YEAR=6,WEEK_OF_MONTH=6,DAY_OF_MONTH=31,DAY_OF_YEAR=31,DAY_OF_WEEK=1,DAY_OF_WEEK_IN_MONTH=5,AM_PM=1,HOUR=10,HOUR_OF_DAY=22,MINUTE=49,SECOND=32,MILLISECOND=565,ZONE_OFFSET=28800000,DST_OFFSET=0]
12小时制时钟:2016-1-31 10:49:32:565
24小时制时钟:2016-1-31 22:49:32:565

2016-01-31 22:49:50:36
16-1-31 下午10:49
2016-1-31
22:49:50
2016-1-31 22:49:50
2016年1月31日 星期日
下午10时49分50秒 CST
2016-1-31 22:49:50

2016-01-31 22:50:09:270

附:

可以将不同选项传入这些工厂方法,以控制结果的长度(从 SHORT 到 MEDIUM 到 LONG 再到 FULL)。确切的结果取决于语言环境,但是通常:

  • SHORT 完全为数字,如 12.13.52 或 3:30pm
  • MEDIUM 较长,如 Jan 12, 1952
  • LONG 更长,如 January 12, 1952 或 3:30:32pm
  • FULL 是完全指定,如 Tuesday、April 12、1952 AD 或 3:30:42pm PST。
Java获取当前年月日、时间[通俗易懂]
Java获取当前年月日、时间[通俗易懂]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/198383.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(1)


相关推荐

  • 最短路径算法汇总「建议收藏」

    最短路径算法汇总「建议收藏」1、Floyd-Warshall算法A、算法基本思想   在有向连通图中,从任意顶点i到顶点j的最短路径,可以看做从顶点i出发,经过m个顶点中转,到达j的最短路程。最开始可以只允许经过”1”号顶点进行中转,接下来只允许经过”1”号顶点和”2”号顶点进行中转……允许经过”1”~”m”号顶点进行中转,求任意两顶点的最短路程。B、算法实现for(intk=1;k<=n;

  • 电脑开机显示“DISK Boot Failure,Insert System Disk And Press Enter”

    电脑开机显示“DISK Boot Failure,Insert System Disk And Press Enter” 电脑开机自检时无法通过,并在界面出现“DISKBootFailure,InsertSystemDiskAndPressEnter”的错误提示。这样的问题该如何解决?今天小编教大家如何排除故障。 造成电脑开机,屏幕上出现“DISKBootFailure,InsertSystemDiskAndPressEnter”故障的原因有: (1)由于硬盘,光驱连在同一条数据线上,但…

  • CODEIF_变量取名「建议收藏」

    CODEIF_变量取名「建议收藏」网址https://unbug.github.io/codelf/大部分开发者都或多或少遇到过变量命名的烦恼,如果命名不规范,不仅会影响开发的效率,而且对后面维护的同学来说也是一个不小的挑战,因为他要去揣摩你这个变量的含义。“计算机科学里两件最难的事:缓存失效和命名。”Codelf通过搜索在线开源平台Github,Bitbucket,GoogleCode,Codeplex,Sou…

  • springboot zuul网关_ubuntu网关服务器搭建

    springboot zuul网关_ubuntu网关服务器搭建目录一.Zuul网关二.Zuul服务的前期准备2.1注册中心EurekaServer的搭建2.2EurekaService的搭建三.Zuul服务搭建五.Zuul的访问六.Zuul的更多功能前言:博主一直力求做到写博客尽量的详细来减少大家花在踩坑上的时间,若有写的不好或错误的地方,还需各方大佬指正。一.Zuul网关网关,是一种网络关口,既然是…

  • 手机端禁止默认长按复制功能[通俗易懂]

    手机端禁止默认长按复制功能[通俗易懂]若要将全部的文字都取消长按复制,只需在css样式中加入如下代码:*{-webkit-touch-callout:none;/*系统默认菜单被禁用*/-webkit-user-select:none;/*webkit浏览器*/-khtml-user-select:none;/*早期浏览器*/-moz-user-select:none;/*火狐*/-ms-use

  • c语言odbc连接数据库_odbc配置access数据库

    c语言odbc连接数据库_odbc配置access数据库一.ODBC连ORACLE: str.Format(“Driver={Microsoft ODBC for Oracle};Server=OracleServer.world;Uid=Username;Pwd=asdasd;”)二.ADO连接ORACLE:

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号