JavaSE就业班Day06:日期时间与正则表达式作业

需积分: 0 0 下载量 13 浏览量 更新于2024-06-30 收藏 60KB DOCX 举报
"JavaSE--day06的每日作业涵盖了Date类、DateFormat、Calendar、Math、System、包装类、正则表达式等多个核心知识点,旨在提升学员对Java基础的掌握和应用能力。" 1. **Date类** - Date类在Java中用于表示特定的瞬间,精确到毫秒。它提供了获取和设置日期与时间的方法。 - 要获取当前日期,可以使用`new Date()`创建Date对象,系统会自动填充当前时间。 - 将日期转换为毫秒值,可以通过Date对象的`getTime()`方法实现。 - 反之,将毫秒值转换为日期,可以用`Date(long date)`构造函数。 2. **DateFormat类** - DateFormat是日期/时间格式化的抽象类,用于将日期和时间转换为文本,以及将文本解析为日期和时间。 - 日期格式化的核心类包括SimpleDateFormat,它是DateFormat的一个具体实现,允许进行详细的格式控制。 - 常见的日期格式规则如"yyyy-MM-dd HH:mm:ss",其中"yyyy"代表四位年份,"MM"代表月份,"dd"代表日期,"HH"代表24小时制的小时,"mm"代表分钟,"ss"代表秒。 - 使用`SimpleDateFormat`对象的`format(Date date)`方法可以将日期转换为指定格式的字符串,而`parse(String source)`方法则用于将字符串解析为日期。 3. **Calendar类** - Calendar是比Date更加强大的日期和时间API,提供了更多的日期/时间操作功能。 - 获取Calendar对象通常通过`Calendar.getInstance()`静态方法。 - Calendar有众多方法,例如`get()`获取日期字段值,`set()`设置日期字段,`add()`添加或减去日期字段的值。 - 使用时注意时区(TimeZone)和 Locale 的影响,它们会影响日期时间的计算和显示。 4. **System类** - System类提供了与系统环境相关的服务,如标准输入输出流、系统属性的访问和系统退出等。 - System类是final的,无法被继承,其方法通常是静态的。 - 常见方法包括`System.out.println()`用于输出,`System.exit(int code)`用于结束JVM,`System.currentTimeMillis()`获取当前时间的毫秒值。 5. **Math类** - Math类包含各种数学运算方法,如三角函数、指数、对数、平方根等。 - Math类的所有方法都是静态的,可以直接通过类名调用,如`Math.random()`生成随机数,`Math.pow(a, b)`计算a的b次方。 6. **包装类** - 包装类是Java为每个基本数据类型提供的类,如Integer、Double等,它们提供了将基本类型与对象之间转换的功能。 - 主要作用是支持面向对象编程,如在集合框架中使用。 - 字符串转基本类型,可以使用包装类的静态方法,如`Integer.parseInt("123")`。 - 自动装箱是将基本类型自动转换为对应的包装类,自动拆箱是包装类自动转换回基本类型,这两个特性从Java 5开始引入。 7. **自动装箱与自动拆箱** - 自动装箱是编译器在合适的时候自动将基本类型转换为对应的包装类对象。 - 自动拆箱则是将包装类对象转换回基本类型,这两个过程无需程序员显式操作。 8. **正则表达式** - 正则表达式是一种模式匹配工具,用于字符串搜索、替换和验证。 - 它的作用包括查找、替换、分割字符串,以及验证字符串是否符合特定模式。 - Java中,String类提供了如`matches(String regex)`、`split(String regex)`等方法来支持正则表达式操作。 - 正则表达式的匹配规则复杂,包括字符集、量词、分组、预查等,需要根据实际需求学习和使用相应的语法。 9. **Date类与SimpleDateFormat类** - 在实际编程中,我们通常结合使用Date和SimpleDateFormat来实现日期的格式化输出和解析。 - 例如,`SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date date = sdf.parse("2022-01-01");`将字符串转换为日期,`String strDate = sdf.format(date);`则反之。 以上知识点是JavaSE中关于日期处理、格式化、数学运算、系统操作等核心内容,熟练掌握这些可以有效提高编程效率和代码质量。