📅  最后修改于: 2023-12-03 15:02:02.616000             🧑  作者: Mango
在Java中,日期是常用的数据类型之一,而toString()方法则是Java中用于将对象转换为字符串的常用方法之一,Date类、Calendar类中的日期类型均支持toString()方法,可以将日期对象转成字符串类型。
在Date类中,toString()方法返回一个String类型的字符串,它表示此Date对象的时间值(以毫秒为单位)。以下是Date类中的toString()方法的使用示例。
Date date = new Date();
String str = date.toString();
System.out.println(str);
输出:
Wed Sep 22 22:41:27 CST 2021
Calendar类是Java 中用于操作日期和时间的类,它的toString()方法返回一个字符串,该字符串包含它所表示的日期和时间的信息。以下是Calendar类中的toString()方法的使用示例。
Calendar cal = Calendar.getInstance();
String str = cal.toString();
System.out.println(str);
输出:
java.util.GregorianCalendar[time=1632366162912,areFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2021,MONTH=8,WEEK_OF_YEAR=39,WEEK_OF_MONTH=4,DAY_OF_MONTH=23,DAY_OF_YEAR=266,DAY_OF_WEEK=5,DAY_OF_WEEK_IN_MONTH=4,AM_PM=1,HOUR=10,HOUR_OF_DAY=22,MINUTE=36,SECOND=2,MILLISECOND=912,ZONE_OFFSET=28800000,DST_OFFSET=0]
可以看到,输出的字符串中包含了日期和时间的详细信息。
Date和Calendar类的toString()方法输出的字符串并不一定符合我们的需求,我们可以通过SimpleDateFormat类格式化输出日期。以下是使用SimpleDateFormat类自定义格式化输出日期的示例代码。
Date now = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 E HH:mm:ss");
System.out.println(sdf.format(now));
输出:
2021年09月23日 星期四 00:17:33
在上述代码中,我们使用了SimpleDateFormat类自定义了日期的输出格式,其中:
yyyy
表示4位年份;MM
表示2位月份;dd
表示2位日期;E
表示星期几;HH
表示24小时制的小时;mm
表示分钟;ss
表示秒。Date类和Calendar类中的toString()方法都可以将日期对象转成字符串类型,但是输出的字符串可能与需要的字符串格式不符。我们可以通过SimpleDateFormat类自定义字符串格式来满足我们的需求。