• 日期类练习题


    目录

    案例:日期工具类

    案例:二月天


    案例:日期工具类

    需求:定义一个日期工具类(DateUtils),包含两个方法:1.把日期转换为指定格式的字符串;2.把字符串解析为指定格式的日期,然后定义一个测试类(DateDemo),测试日期工具类的方法。

    思路:

    • 定义日期工具类(DateUtils)
    • 在工具类里定义第一个方法(dateToString),用于把日期转换为指定格式的字符串:

    返回值类型:String

    参数:Date date,String format

    • 在工具类里定义第二个方法(stringToDate),用于把字符串解析为指定格式的日期

    返回值类型:Date

    参数:String s,String format

    • 定义一个测试类,在测试类中调用方法。

    程序演示:

    1. import java.text.ParseException;
    2. import java.text.SimpleDateFormat;
    3. import java.util.Date;
    4. /*
    5. 工具类:
    6. 构造方法私有
    7. 成员方法静态
    8. (直接通过类名调方法)
    9. */
    10. public class DateUtils {
    11. //构造方法
    12. private DateUtils() {
    13. }
    14. /*
    15. 把日期转为指定格式的字符串
    16. 返回值类型:String
    17. 参数:Date date,String format(传递的String参数用于指定日期的转换格式)
    18. */
    19. public static String dateToString(Date date,String format){
    20. //使用SimpleDateFormat将传进来的日期转换为指定格式的字符串
    21. SimpleDateFormat simpleDateFormat = new SimpleDateFormat(format);
    22. String format1 = simpleDateFormat.format(date);
    23. return format1;
    24. }
    25. /*
    26. 把字符串解析为指定格式的日期
    27. 返回值类型Date
    28. 参数:String s,String format
    29. */
    30. public static Date stringToDate(String s,String format) throws ParseException {
    31. SimpleDateFormat simpleDateFormat = new SimpleDateFormat(format);
    32. Date parse = simpleDateFormat.parse(s);
    33. return parse;
    34. }
    35. }
    36. /*
    37. 需求:
    38. 思路:
    39. ① 定义日期工具类(DateUtils)
    40. ② 在工具类里定义第一个方法(dateToString),用于把日期转换为指定格式的字符串:
    41. 返回值类型:String
    42. 参数:Date date,String format
    43. ③ 在工具类里定义第二个方法(stringToDate),用于把字符串解析为指定格式的日期
    44. 返回值类型:Date
    45. 参数:String s,String format
    46. ④ 定义一个测试类,在测试类中调用方法。
    47. */
    48. class DateDemo {
    49. public static void main(String[] args) throws ParseException {
    50. //创建日期对象,获取当前时间戳
    51. Date date = new Date();
    52. //使用字符串指定日期格式
    53. String format = "yyyy-MM-dd HH:mm:ss";
    54. //创建DateUtils类对象调用method方法
    55. String s = DateUtils.dateToString(date,format);
    56. System.out.println(s);//2022-06-13 16:49:24
    57. String s1 = DateUtils.dateToString(date, "yyyy年MM月dd日");
    58. System.out.println(s1);//2022年06月13日
    59. System.out.println("===================");
    60. //调用parse方法
    61. Date date1 = DateUtils.stringToDate(s,format);
    62. System.out.println(date1);//Mon Jun 13 16:49:24 CST 2022
    63. }
    64. }

    案例:二月天

    需求:获取任意一年的二月有多少天

    思路:

    • 键盘录入任意的年份,
    • 设置日历的修年月日:
    1. 年:来自于键盘录入
    2. 月:设置为3月,月份是从0开始的,所以设置的值是2
    3. 日:设置为1
    • 3月1日往前推一天,就是2月的最后一天
    • 输出获取的结果即可。

    程序演示:

    1. import java.util.Calendar;
    2. import java.util.Scanner;
    3. /*
    4. 需求:获取任意一年的二月有多少天
    5. */
    6. public class CalendarDemo {
    7. public static void main(String[] args) {
    8. System.out.print("请输入任意年份:");
    9. //采用键盘录入年份
    10. Scanner scanner = new Scanner(System.in);
    11. int year = scanner.nextInt();
    12. //获取日历对象
    13. Calendar instance = Calendar.getInstance();
    14. //给日历字段定值,我们获取的3月那就定值为2
    15. instance.set(year, 2, 1);//月份要-1
    16. //切记一定要用add做减法不要在变量上面做减法,使用add做减法日期会动态更新,对变量做减法则不会
    17. instance.add(Calendar.DATE, -1);
    18. int date = instance.get(Calendar.DATE);
    19. System.out.println(year + "年2月共有" + date + "天");
    20. }
    21. }

    --欢迎大家与我一起交流java知识

     

  • 相关阅读:
    SOA和微服务的介绍
    三大开源向量数据库大比拼
    xpath 高级用法
    基于springboot thymeleaf的电商项目
    数据持久化技术——MP
    worthington四重奏丨worthington经过使用测试的细胞分离系统
    制作rpm包实例
    vue入门
    Unity的粒子总是丢材质
    [公派访问学者]申请方法分享
  • 原文地址:https://blog.csdn.net/weixin_67796933/article/details/125436475