「java中日历类」日历 java

博主:adminadmin 2023-01-16 08:36:07 376

本篇文章给大家谈谈java中日历类,以及日历 java对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

Java中的Calendar类中的getActualMaximum方法

Calendar.DATE这个字段表示一个月中的某天,

Calendar c = new GregorianCalendar();

c.getActualMaximum(Calendar.DATE); 这句表示返回一个int值,这个值是这个月最大的那一天,这里返回31,表示10月最大的那天是31号。

这里一定要跟一个参数,否则不知道返回的是什么的最大值,比如:

c.getActualMaximum(Calendar.MINUTE); 返回59,表示返回分钟最大值为59

你可以看一下api,

Calendar 有很多不同字段,表示不同意思

如何在Java中获取日历类(CalendarClass)的实例?

Calendar类不能通过使用newCalendar创建。得到Calendar类实例的最好办法是在Calendar中使用getInstance()static方法。

Java中解释一些日历类(CalendarClass)中的重要方法?

Calendar类(理解)

Calendar类是采用手工的方式取得日期,可以通过此类精确到毫秒,此类的定义如下:

public abstract class Calendar extends Object

implements Serializable, Cloneable, ComparableCalendar

这个类本身是一个抽象类,抽象类要想实例化肯定使用子类:GregorianCalendar

package org.lxh.api.datedemo;

import java.util.Calendar;

import java.util.GregorianCalendar;

public class CalendarDemo {

public static void main(String[] args) {

Calendar calendar = new GregorianCalendar();

System.out.println("YEAR: " + calendar.get(Calendar.YEAR));

System.out.println("MONTH: " + (calendar.get(Calendar.MONTH) + 1));

System.out.println("DATE: " + calendar.get(Calendar.DATE));

System.out

.println("HOUR_OF_DAY: " + calendar.get(Calendar.HOUR_OF_DAY));

System.out.println("MINUTE: " + calendar.get(Calendar.MINUTE));

System.out.println("SECOND: " + calendar.get(Calendar.SECOND));

System.out

.println("MILLISECOND: " + calendar.get(Calendar.MILLISECOND));

}

}

但是现在有一个问题,如果每次取时间都按照这种方式取的话,那么得累死,那么能不能设计一个类,可以通过此

类直接取得时间呢,例如:现在给出了如下的一个接口:

package org.lxh.api.datedemo;

public interface DateTime {

/**

*取得日期

* @return 日期的字符串,例如:2009-12-22

*/

public String getDate() ;

/**

*取得日期时间

* @return 日期时间的字符串,例如:2009-12-22 11:06:23.345

*/

public String getDateTime() ;

/**

*取得时间戳

* @return 返回时间戳的字符串,例如:20091222110623345

*/

public String getTimeStamp() ;

}

前面需要补0的问题需要注意,例如:01。

package org.lxh.api.datedemo;

import java.util.Calendar;

import java.util.GregorianCalendar;

public class DateTimeImpl implements DateTime {

private Calendar calendar;

public DateTimeImpl() {

this.calendar = new GregorianCalendar();

}

public String getDate() {

StringBuffer buf = new StringBuffer();

buf.append(calendar.get(Calendar.YEAR)).append("-");

buf.append(this.addZero((calendar.get(Calendar.MONTH) + 1), 2)).append("-");

buf.append(this.addZero(calendar.get(Calendar.DATE), 2));

return buf.toString();

}

public String getDateTime() {

StringBuffer buf = new StringBuffer();

buf.append(calendar.get(Calendar.YEAR)).append("-");

buf.append(this.addZero((calendar.get(Calendar.MONTH) + 1), 2)).append("-");

buf.append(this.addZero(calendar.get(Calendar.DATE), 2)).append(" ");

buf.append(this.addZero(calendar.get(Calendar.HOUR_OF_DAY), 2)).append(":") ;

buf.append(this.addZero(calendar.get(Calendar.MINUTE), 2)).append(":") ;

buf.append(this.addZero(calendar.get(Calendar.SECOND), 2)).append(".") ;

buf.append(this.addZero(calendar.get(Calendar.MILLISECOND), 3)) ;

return buf.toString();

}

@Override

public String getTimeStamp() {

StringBuffer buf = new StringBuffer();

buf.append(calendar.get(Calendar.YEAR));

buf.append(this.addZero((calendar.get(Calendar.MONTH) + 1), 2));

buf.append(this.addZero(calendar.get(Calendar.DATE), 2));

buf.append(this.addZero(calendar.get(Calendar.HOUR_OF_DAY), 2));

buf.append(this.addZero(calendar.get(Calendar.MINUTE), 2)) ;

buf.append(this.addZero(calendar.get(Calendar.SECOND), 2)) ;

buf.append(this.addZero(calendar.get(Calendar.MILLISECOND), 3)) ;

return buf.toString();

}

private String addZero(int num, int len) {

StringBuffer buf = new StringBuffer();

buf.append(num);

while (buf.length() len) {

buf.insert(0, 0);

}

return buf.toString();

}

}

关于java中日历类和日历 java的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。