博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java进阶5——日期类、包装类和正则表达式
阅读量:2350 次
发布时间:2019-05-10

本文共 1925 字,大约阅读时间需要 6 分钟。

日期相关类

Date类

表示特定的瞬间,精确到毫秒,他可以通过方法来设定自己所表示的时间,可以表示任意的时间

  • Date类的构造方法

    Date() :创建的是一个表示当前系统时间的Date对象
    Date(long date) :根据”指定时间”创建Date对象一旦使用这个构造方法,那么时间就是从1970年1月1号的8点0分0秒开始,加上括号内给定的毫秒,而不是从当前时间开始累加

  • Date类常用方法

void setTime(long time):设置当前时间,调用此方法时,默认时间从1970年1月1日8点0分0秒开始加上给的时间long getTime():获取到的是毫秒值

DateFormat类 & SimpleDateFormat

  • DateFormat:
    一个抽象类,用于格式化时间和日期的类
  • SimpleDateFormat
    是DateFormat的实现类,用于格式化时间和日期的类,将日期转换为我们想要的格式——Date—–String的转换;或者将字符串转换为Date

DateFormat&SimpleDateFormat的常用方法

  • DateFormat
// 一下两个方法都是先通过SimpleDateFormat的有参构造方法设置转换格式之后,在通过SimpleDateFormat的向上转型调用实现的format(Date date);  // 将日期对象转换为指定的格式parse(String source);   // 将字符串转换为日期对象
  • SimpleDateFormat
SimpleDateFormat(String pattern);   // 设置转换格式

结合使用的结果如下

这里写图片描述
这里特别注意,SimpleDateFomat这个类的有参构造中的几个英文字母是固定的,不可更改,具体规则请查看API

Calendar类

是日历类,也是一个抽象类,可通过其自身的静态方法getInstance()方法创建对象

- Calendar类常用方法

getInstance();  // 获取一个Calendar的对象get(int field); // 返回给定日历字段的值,一般使用对象.年/月/日....来获取对应字段的值set(int field, int value);  // 把指定的字段修改成指定的值add(int field, int amount); // 在指定的字段上加上指定的值

这里需要注意,月份是从0开始的,所以使用的时候需要给月份加1

包装类&正则表达式

包装类

java将基本数据类型值封装成了对象。可以提供更多的操作基本数值的功能。

8种基本类型对应的包装类如下:
这里写图片描述
这里需要注意一下,int的包装类是Integer,char的包装类是Character,其他六个都是首字母大写

  • Integer的常用方法
// 构造方法:Integer(int value); // 创建一个Integer对象,这个对象的值就是括号中给定的值Integer(String s);  // 创建一个Integer对象,这个对象的值就是括号中给定的值

下面的构造方法中的参数,只能是字符串类型的数字,其他值会报错

// 成员方法:intValue(); // 以int类型返回该Integer的值parseInt(String s); // 将参数作为有符号的的整数返回toString(); // 返回一个表示该Integer值得String对象

包装类的自动装箱与拆箱

因为在java中对象是无法进行加减乘除运算的,所以就有了自动装箱与拆箱,这是jdk1.5的特性,为了实现对象能够运算

自动拆箱:对象转成基本数值
自动装箱:基本数值转成对象

//自动装箱//相当于: Integer i = new Integer(10);//Integer i = 10;//自动拆箱//相当于 int a = i.intValue();//Integer i = 10;//int a = i;

正则表达式

正则表达式概述

正则表达式是专门解决字符串规则匹配的工具。

正则表达式也是一个字符串,用来定义匹配规则。
参照

/*** 判断数字:首位不能为3,长度在3-7之间,全部为数字*/// 创建一个字符串对象,因为使用正则表达式需要通过字符串对象调用matches方法String s = "1236";// 调用matches方法,并设置规则boolean matches = s.matches("[^3][0-9]{2,6}");// 将匹配结果打印System.out.println(matches);
你可能感兴趣的文章
localhost与127.0.0.1的区别
查看>>
windows下的host文件在哪里,有什么作用?
查看>>
操作系统之字符集
查看>>
OSI和TCP/IP
查看>>
Java项目svn的迁移
查看>>
【工具】人脸识别比对开放平台汇总
查看>>
基于DirectUI技术开发的发卡系统
查看>>
STM32 HAL库、标准外设库、LL库(STM32 Embedded Software)
查看>>
51和AVR单片机
查看>>
DSP开发板
查看>>
stm32标准外设库和芯片资料下载地址
查看>>
ARM Keil MDK开发STM32工程模板
查看>>
NoSQL分类及常用软件
查看>>
ubuntu 16.04安装nVidia显卡驱动和cuda/cudnn踩坑过程
查看>>
基于STM32CubeMX创建STM32L496ZGTx的工程
查看>>
如何通过OpenFace实现人脸识别框架
查看>>
Angle和XBGoost以及Spark的性能对比
查看>>
IOS CoreImage实现人脸识别
查看>>
Tensorflow的高级封装
查看>>
Storm 1.1.0 集群安装
查看>>