Java获取当前年月日、时间

两种方法,通过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);
    }
    
}

转载地址:https://blog.csdn.net/coffeesweet/article/details/50615944

 

posted @ 2020-08-19 08:35  bellin124  阅读(35411)  评论(0编辑  收藏  举报