日期和时间部分总结

 

日期和时间部分总结:


package com.yyr.clone;

import java.text.SimpleDateFormat;
import java.time.Clock;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAdjusters;
import java.util.Calendar;
import java.util.Date;
public class Test {
    public static void main(String[] args) {
        Calendar cal = Calendar.getInstance();
        // 获取当前时间:年月日时分秒
        toDay(cal);
        // 获取从1970年1月1日0时0分0秒到现在的毫秒数
        getMillis();
        // 获取当前月第一天和最后一天
        getFirstAndLastDay(cal);
        // 昨天的此时此刻(加日期格式化)
        getYesterday(cal);
    }

    public static void toDay(Calendar cal) {

        System.out.println("年:" + cal.get(Calendar.YEAR));
        System.out.println("月:" + cal.get(Calendar.MONTH) + 1);
        System.out.println("日:" + cal.get(Calendar.DATE));
        System.out.println("时:" + cal.get(Calendar.HOUR_OF_DAY));
        System.out.println("分:" + cal.get(Calendar.MINUTE));
        System.out.println("秒:" + cal.get(Calendar.SECOND));
        // java 8
        LocalDateTime dt = LocalDateTime.now();
        System.out.println("年:" + dt.getYear());
        System.out.println("月(英文):" + dt.getMonth() + ":" + dt.getMonthValue());
        System.out.println("日:" + dt.getDayOfMonth());
        System.out.println("时:" + dt.getHour());
        System.out.println("分:" + dt.getMinute());
        System.out.println("秒:" + dt.getSecond());
    }

    public static void getMillis() {
        System.out.println("毫秒数:" + Calendar.getInstance().getTimeInMillis());
        System.out.println("毫秒数:" + System.currentTimeMillis());
        // java 8
        System.out.println("毫秒数:" + Clock.systemDefaultZone().millis());
    }

    public static void getFirstAndLastDay(Calendar c) {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        c.add(Calendar.MONTH, 0);
        c.set(Calendar.DAY_OF_MONTH, 1);
        String first = sdf.format(c.getTime());
        c.set(Calendar.DAY_OF_MONTH, c.getActualMaximum(Calendar.DAY_OF_MONTH));
        String last = sdf.format(c.getTime());
        System.out.println("本月第一天:" + first + "\t本月最后一天:" + last);
        // java 8
        LocalDate day = LocalDate.now();
        LocalDate fisrtday = LocalDate.of(day.getYear(), day.getMonth(), 1);

        //LocalDate fisrtday1=day.with(TemporalAdjusters.firstDayOfMonth());
        LocalDate lastday = day.with(TemporalAdjusters.lastDayOfMonth());
        System.out.println("本月第一天:" + fisrtday + "\t本月最后一天:" + lastday);
    }

    public static void getYesterday(Calendar c) {
        c.add(Calendar.DATE, -1);
        System.out.println(formatDateBySdf(c.getTime()));
        // java 8
        LocalDateTime now = LocalDateTime.now().minusDays(1);
        System.out.println(formatDateByDf(now));

    }

    // 格式化日期1
    public static String formatDateBySdf(Date date) {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");

//字符串日期转时间

try {
            System.out.println("parse:"+sdf.parse("2018/01/10 12:05:30"));
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return sdf.format(date);
    }
    // 格式化日期2
    public static String formatDateByDf(LocalDateTime now) {
        // java 8
        DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");

//字符串日期转时间

System.out.println("parse:"+LocalDateTime.parse("2018-01-10 12:05:30", df));
        return df.format(now);
    }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值