Date类和封装类 作者:一衡 今日学习的内容以记忆和练习为主,以操作时间相关的多一些,需要多多练习。 一、Date类 1、Date类的概述 Date: 表示特定的瞬间,精确到毫秒,他可以通过方法来设定自己所表示的时间,可以表示任意的时间。 2、Date类的构造方法 Date();创建一个表示当前系统的时间的Date对象。 Date d = new Date();(获取的是以1970-1-1,0时0分的毫秒时间) Date(long date);根据制定时间创建一个Date对象。 long s = System.System.currentTimeMillis();(获取一个当前系统的时间) 3、Date的常用方法 设置 void setTime(long time) 毫秒值----Date值 获取 long getTime(); Date ---毫秒值 4、DateFormat类 & SimpleDateFormat DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。日期/时间格式化子类(如 SimpleDateFormat类)允许进行格式化(也就是日期 -> 文本)、解析(文本-> 日期)和标准化。 我们通过这个类可以帮我们完成日期和文本之间的转换。 SimpleDateFormat: 格式化: Date --- String String format(Date date)//将日期转换成一个一定格式的字符串 解析: String --- Date "2049-8-26" Date parse(String source)//解析成默认Date对象的格式 构造方法: SimpleDateFormat() :使用默认的模式进行对象的构建 SimpleDateFormat(String pattern) :使用的指定的模式进行对象的构建 (yyyy年MM月dd日) 注意:解析的字符串,模式必须和构建对象的模式一样。 例如: public class SimpleDateFormatTest { public static void main(String[] args) throws ParseException { //出生日期 String birthday = "1998-01-01"; //今天日期 String now = "2000-01-01"; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); //将字符串转换成日期对象 Date d1 = sdf.parse(birthday); Date d2 = sdf.parse(now); //将日期对象转换成long类型 long l = d1.getTime(); long l2 = d2.getTime(); System.out.println((l2 - l) / 1000 / 60 / 60 / 24); } } 5、Calendar类 Calendar是日历类,在Date后出现,替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。 Calendar为抽象类,由于语言敏感性,Calendar类在创建对象时并非直接创建,而是通过静态方法创建,将语言敏感内容处理好,再返回子类对象 void set(int field, int value) :把指定的字段修改成指定的值 c.set(Calendar.DAY_OF_MONTH, 20); void add(int field, int amount): 在指定的字段上加上指定的值 c.add(Calendar.DAY_OF_MONTH, -1); //获取制定的年月日的值 int year = c.get(Calendar.YEAR); int month = c.get(Calendar.MONTH) + 1; int day = c.get(Calendar.DAY_OF_MONTH); 二、包装类&正则表达式 1、包装类概述 Java将基本数据类型值封装成了对象。 每个常量都有对应的封装对象 除了int 为Integer char 为 Character 其他的类型封装都是首字母大写 以int为例 Integer: String --- int 方式1:int intValue() 方式2: static int parseInt(String s) int --- String 方式1: + "" 方式2:String toString() 2、包装类的构造方法 构造方法: Integer(int value) Integer(String s) 3、包装类的自动装箱和拆箱 自动拆箱:对象转成基本数值 相当于 int a = i.intValue(); Integer i = 10; int a = i; 自动装箱:基本数值转成对象 相当于: Integer i = new Integer(10); Integer i = 10; 4、正则表达式 概述: 正则表达式是专门解决字符串规则匹配的工具。 正则表达式也是一个字符串,用来定义匹配规则。 boolean mathches(String regex); 正则表达式在使用split(String s)分割字符串的时候,以.分割时候,前面需要添加\\ 空格时需要用” +”(空格+)
|