Java实用类——操作日期和时间

Date类:

  • Date 位于java.util.Date类:表示日期和时间
  • SimpleDateFormat 位于 java.text.SimpleDateFormat类**:格式化日期类**
  • **parse方法:**将字符串转为日期类型
java 复制代码
 public static void main(String[] args) throws ParseException {
        //获得当前时间
        Date date = new Date();
        System.out.println(date);
        //创建格式化日期工具,并且指定格式
        SimpleDateFormat simpleDateFormat =
                new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        //这时候不能直接输出,需要转成String类型
        String strdate = simpleDateFormat.format(date);
        System.out.println("格式化后:"+strdate);
        //将字符串转为日期类型
        Date br = simpleDateFormat.parse("1991-12-31 01:01:01");
    }

创建了一个当前日期和时间的Date对象,并使用 **SimpleDateFormat****将日期和时间格式化为指定的字符串格式 ,**可以用String类型接收字符串。"yyyy-MM-dd HH-mm-ss"是一种规定好了的日期和时间格式

Calendar类:

Calendar类是一个抽象类 ,**可以通过静态方法getInstance()来获得Calendar的对象,**其实这个获得的对象是它子类的对象。

|-------------------------|--------------|
| int get(int field) 静态方法 | 返回给定日历字段的值 |
| YEAR | 年 |
| MONTH | 月 |
| DAY_OF_MONTH | 一月中的某天 |
| DAY_OF_WEEK | 一星期中的某天 |
| getInstance() | 获取Calendar对象 |

java 复制代码
  //因为这个getInstance()是静态常量,用来获取对象
        Calendar calendar = Calendar.getInstance();
//get方法用来从Calendar对象中获取特定的字段值  
        System.out.println("今天是:"+calendar.get(Calendar.YEAR)+
                           "年"+calendar.get(Calendar.MONTH)+
                           "月"+calendar.get(Calendar.DAY_OF_MONTH+1)+"日");

设置日期:

java 复制代码
 calendar.set(2015, Calendar.APRIL, 6); // 设置日期为2015年4月6日

获取代码运行时间:

System.currentTimeMillis();用long来接收,一个在程序头一个在程序尾就可以减出来运行花费的毫秒数

System.currentTimeMillis();返回从1970年1月1日00:00:00:000以来的毫秒数

java 复制代码
 public static void main(String[] args) {
//返回1970年1月1日00:00:00:000以来的毫秒数
        long l = System.currentTimeMillis();
        Calendar cal = Calendar.getInstance();
        System.out.println(Calendar.YEAR);
        System.out.println((Calendar.MONTH)+1);//0-11月所以需要+1
        System.out.println(Calendar.DATE);

        long l1 = System.currentTimeMillis();
        System.out.println("该程序运行的时间为(毫秒数):"+(l1-l));

    }

LocalDateTime(1.8新增的日期操作):

LocalDateTime :表示日期和时间,不包含时区信息

LocalDate:仅表示日期,不包含时间和时区信息

LocalTime:仅表示时间,不包含日期和时区信息

java 复制代码
       //当前日期
        LocalDate localDate = LocalDate.now();
        System.out.println("当前日期:"+localDate);
        
        //当前时间
        LocalTime localTime = LocalTime.now();
        System.out.println("当前时间"+localTime);
        
        //获取当前日期和时间
        LocalDateTime localDateTime = LocalDateTime.now();
        System.out.println("当前日期和时间:"+localDateTime);
格式化:
java 复制代码
String format = localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
System.out.println("格式化后的日期"+format);
相关推荐
草莓熊Lotso35 分钟前
Qt 进阶核心:UI 开发 + 项目解析 + 内存管理实战(从 Hello World 到对象树)
运维·开发语言·c++·人工智能·qt·ui·智能手机
2501_9418656341 分钟前
从事件驱动到异步架构的互联网工程语法构建与多语言实践分享
java·开发语言·jvm
前端 贾公子4 小时前
v-if 与 v-for 的优先级对比
开发语言·前端·javascript
嗯嗯=5 小时前
python学习篇
开发语言·python·学习
全靠bug跑7 小时前
Spring Cache 实战:核心注解详解与缓存过期时间配置
java·redis·springcache
不会c嘎嘎7 小时前
QT中的常用控件 (二)
开发语言·qt
聆风吟º7 小时前
【数据结构手札】空间复杂度详解:概念 | 习题
java·数据结构·算法
计算机程序设计小李同学7 小时前
基于SpringBoot的个性化穿搭推荐及交流平台
java·spring boot·后端
是一个Bug8 小时前
50道核心JVM面试题
java·开发语言·面试
朱朱没烦恼yeye8 小时前
java基础学习
java·python·学习