Java常用API(第二篇)

Date类

JDK8之前经常用来处理时间的类

方法作用
Date()构造方法,创建对象并获取当前的时间
Date(long time)构造方法,传入一个毫秒值并把其转化成一个Date对象池
setTime(long time)传入一个毫秒值,把这个毫秒值转换成对应时间的Date对象
getTime()获取当前Date对象对应的毫秒值
public class Test {
    public static void main(String[] args) {
        //获取当前时间的Date对象
        Date date1 = new Date();
        System.out.println(date1);

        //获取指定毫秒值的Date对象
        Date date2 = new Date(13232324);
        System.out.println(date2);
        
        //将一个Date对象设置为指定毫秒值的时间
        date1.setTime(9876543);
        System.out.println(date1);
        
        //获取Date对象的毫秒值
        long time = date2.getTime();
        System.out.println("date2对象的毫秒值:"+time);
    }
}

SimpleDateFormat类

SimpleDateFormat类的作用是格式化时间对象,把Date中的时间转换成自己想要的格式字符串

方法作用
SimpleDateFormat(String s)传入一个日期格式的字符串,定义一个转换日期的格式
format(Date date)传入一个Date对象按照格式转换成指定字符串
format(long time)传入一个毫秒值,把这个毫秒值转换成指定格式的日期字符串
parse(String s)传入一个字符串,把它解析成一个Date对象,这个字符串的格式一定要和SimpleDateFormat定义的格式一样,否则就会报错
public class Test {
    public static void main(String[] args) throws ParseException {
        //定义一个日期转换格式的对象
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        //传入一个Date对象按照指定格式转换成字符串
        Date date = new Date();
        String s = dateFormat.format(date);
        System.out.println(s);

        //传入一个毫秒值按照指定格式转换成字符串
        String s1 = dateFormat.format(23242142);
        System.out.println(s1);

        //传入一个指定字符串转换成对应的Date对象
        Date date1 = dateFormat.parse("1999-10-1 12:30:00");
        System.out.println(date1);
    }
}

在这里插入图片描述

Calendar类

获取当前的日历对象,里面包括了当前的所有日期信息

方法作用
getInstance()静态方法,获取当前时间的日历对象
get(int field)获取日历中的某个信息
getTime()获得跟日历对象对应时间的日期对象
getTimeMillis()获取时间的毫秒值
set(int field,int value)修改日历的某个信息
add(int field,int amout)为某个信息增加或减少指定的值
public class Test {
    public static void main(String[] args) {
        //获取对象
        Calendar calendar = Calendar.getInstance();
        System.out.println(calendar);

        //获取日历中的某个信息
        calendar.get(Calendar.YEAR);
        calendar.get(Calendar.MONTH);

        //获取跟日历对象对应的日期对象
        Date time = calendar.getTime();
        System.out.println(time);

        //获取时间的毫秒值
        long timeInMillis = calendar.getTimeInMillis();
        System.out.println(timeInMillis);

        //修改日历的某个信息
        calendar.set(Calendar.YEAR,2009);
        System.out.println(calendar);

        //为某个信息增加或减少指定的值
        calendar.add(Calendar.YEAR,-99);
        System.out.println(calendar);
    }
}

LocalDate、 LocalTime、 LocalDateTime类

JDK8开始新增的处理时间的类,其中LocalDate可以处理年月日,LocalTime可以处理时分秒,LocalDateTime可以处理年月日时分秒,三个类的API十分的相似,可以互相借鉴,这里就只展示LocalDate的部分API即可

方法作用
now()静态方法,用来获取一个LocalDate对象
of(int year, int month, int day)静态方法,指定年月日的数值获取一个LocalDate对象
getYear()获取当前的年数据
getMonthValue()获取当前的月份
getDayOfMonth()获取当前的日数
getDayOfWeek().getValue()获取当前是星期几
getDayOfYear()获取当前是一年中的第几天
withYear(int year)改变当前的年份
withMonth(int month)改变当前月份
withDayOfMonth(int day)改变当前的日数
plusDays(int day)当前的日数加xxx天
plusMonths(int month)当前的月份加xxx月
plusYears(int year)当前的年份加xxx年
plusWeeks(int week)当前日期加一个星期
a.equals(b)判断a的日期等于b的日期
a.isAfter(b)判断a的日期是否大于b的日期
a.isBefore(b)判断a的日期是否小于b的日期
public class Test {
    public static void main(String[] args) {
        //创建LocalDate对象
        LocalDate now = LocalDate.now();

        //创建对象
        LocalDate of = LocalDate.of(2001, 03, 19);

        //获取当前的年数据
        int year = now.getYear();
        System.out.println(year);

        //获取当前的月份
        int month = now.getMonthValue();
        System.out.println(month);

        //获取当前的日数
        int day = now.getDayOfMonth();
        System.out.println(day);

        //获取当前是星期几
        int week = now.getDayOfWeek().getValue();
        System.out.println(week);

        //获取当前是一年中的第几天
        int dayOfYear = now.getDayOfYear();
        System.out.println(dayOfYear);

        //改变当前的年份
        LocalDate withYear = now.withYear(2022);
        System.out.println(withYear);

        //改变当前的月份
        LocalDate withMonth = now.withMonth(2);
        System.out.println(withMonth);

        //改变当前的日数
        LocalDate withDayOfMonth = now.withDayOfMonth(12);
        System.out.println(withDayOfMonth);

        //当前的日数加xxx天
        LocalDate plusDays = now.plusDays(1);
        System.out.println(plusDays);

        //当前的月份加xxx天
        LocalDate plusMonths = now.plusMonths(-1);
        System.out.println(plusMonths);

        //当前的年份加xxx年
        LocalDate plusYears = now.plusYears(10);
        System.out.println(plusYears);

        //当前的日期加一个星期(就是加七天)
        LocalDate plusWeeks = now.plusWeeks(1);
        System.out.println(plusWeeks);

        //判断now的日期是否等于of的日期
        System.out.println(now.equals(of));

        //判断now的日期是否大于of的日期
        System.out.println(now.isAfter(of));

        //判断now的日期是否小于of的日期
        System.out.println(now.isBefore(of));
    }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值