DateTime 的基本使用

导入依赖
<dependency>
   <groupId>joda-time</groupId>
   <artifactId>joda-time</artifactId>
   <version>2.9.8</version>
</dependency>

import org.joda.time.DateTime;
import org.joda.time.Days;
import org.joda.time.LocalDate;
import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter;

import java.util.Calendar;
import java.util.Date;

/**
 * @Author: huangshun
 * @Date: 2019/6/24 14:26
 * @Version 1.0
 */
public class DateTimeTest {
    public static void main(String[] args) {

        // 1 初始化时间 获取当前时间
        DateTime dateTime = new DateTime();
        System.out.println("初始化时间"+dateTime);

        // 2.按格式输出时间(将DateTime格式转换为字符串)  小写hh是12小时制,大写HH是24小时制
        String time = dateTime.toString("yyyy年-MM月-dd日 HH:mm:ss");
        System.out.println("按格式输出时间"+time);

        //3.将字符串转换为DateTime格式
        DateTimeFormatter format = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss");
        DateTime format_dateTime = DateTime.parse("2018-4-23 23:12:16", format);
        System.out.println("将字符串转换为DateTime格式"+format_dateTime);

        // 5.计算两个日期间隔的天数
        LocalDate start=new LocalDate(2019,6,24);
        LocalDate end=new LocalDate(2018, 06, 16);
        int days = Days.daysBetween(start, end).getDays();
        int day2 = Days.daysBetween(end, start).getDays();
        System.out.println("间隔的日期为:"+days);
        System.out.println("间隔的日期2为:"+day2);

        // 6.增加日期
        DateTime dateTime1 = DateTime.parse("2018-04-23");//将字符串转为dateTime格式
        dateTime1 = dateTime1.plusDays(1);//增加1天
        dateTime1 = dateTime1.plusHours(2);//增加2小时
        dateTime1 = dateTime1.plusMinutes(3);//增加3分钟
        dateTime1 = dateTime1.plusMonths(4);//增加4个月
        dateTime1 = dateTime1.plusSeconds(5);//增加5秒
        dateTime1 = dateTime1.plusWeeks(6);//增加6周
        dateTime1 = dateTime1.plusYears(7);//增加7年
        System.out.println(dateTime1);

        // 7.减少日期
        DateTime dateTime7 = DateTime.parse("2018-04-23");
        dateTime7 = dateTime7.minusMillis(1);//减少1分钟
        dateTime7 = dateTime7.minusHours(1);//减少1小时
        dateTime7 = dateTime7.minusSeconds(1);//减少1秒
        System.out.println(dateTime7);

        // 8.判断是否闰月
        DateTime time8 = new DateTime();
        org.joda.time.DateTime.Property month = time8.monthOfYear();
        System.out.println("是否闰月:" + month.isLeap());

        // 9.DateTime与Date转换
        DateTime date_time = new DateTime(new Date());
        Date date = date_time.toDate();
        System.out.println(date);

        DateTime time2 = new DateTime(System.currentTimeMillis());
        System.out.println(time2.getMillis());


        // 10.DateTime与Calendar转换
        Calendar calendar = Calendar.getInstance();
        dateTime = new DateTime(calendar);
        System.out.println(dateTime);

        // 11. 判断是周几
        DateTime dateTime_week=new DateTime();
        int dayOfWeek = dateTime_week.getDayOfWeek(); // 得到是周几
        System.out.println("dayOfWeek---"+dayOfWeek);

        DateTime dateTime_week2 = DateTime.parse("2019-06-25");//将字符串转为dateTime格式
        System.out.println(dateTime_week2.getDayOfWeek());


    }

}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值