有时候,我们需要把一个特定的字符串转成日期类型,有时候又要把日期类型转成字符串格式。还有有时候要实现日期转星期的需求。又或者需要获得某个日期的下一天的日期。在这里大都可以通过以下类来实现。如下:
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.sql.Date;
public class DayDate {
/** 星期几 */
private String day;
/** 日期 */
private String date;
final String dayNames[] = { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
public DayDate() {
super();
DateFormat objDateFormat = new SimpleDateFormat("yyyy-MM-dd");
Calendar objCalendar = Calendar.getInstance();
this.date = objDateFormat
.format(new Date(objCalendar.getTimeInMillis()+24L*60L*60L*1000L));
int dayOfWeek = objCalendar.get(Calendar.DAY_OF_WEEK);
this.day = dayNames[dayOfWeek - 1];
}
/**
* 取得下一天
*/
public String nextDay(){
Calendar objCalendar = Calendar.getInstance();
objCalendar.setTime(Date.valueOf(this.date));
int dayOfWeek = objCalendar.get(Calendar.DAY_OF_WEEK)+1>7 ? 1:objCalendar.get(Calendar.DAY_OF_WEEK)+1;
return this.day = dayNames[dayOfWeek - 1];
}
/**
* 取得下一date
* @return
*/
public String nextDate(){
DateFormat objDateFormat = new SimpleDateFormat("yyyy-MM-dd");
Calendar objCalendar = Calendar.getInstance();
objCalendar.setTime(Date.valueOf(this.date));
return this.date = objDateFormat
.format(new Date(objCalendar.getTimeInMillis()+24L*60L*60L*1000L));
}
/**
* 构造函数,以字段初始化
*
* @param day
* 设置星期几
* @param date
* 设置日期
*/
public DayDate(String date) {
super();
Calendar objCalendar = Calendar.getInstance();
objCalendar.setTime(Date.valueOf(date));
int dayOfWeek = objCalendar.get(Calendar.DAY_OF_WEEK);
this.day = dayNames[dayOfWeek - 1];
this.date = date;
}
/**
* @return the date
*/
public String getDate() {
return date;
}
/**
* @param date
* the date to set
*/
public void setDate(String date) {
this.date = date;
}
/**
* @return the day
*/
public String getDay() {
return day;
}
/**
* @param day
* the day to set
*/
public void setDay(String day) {
this.day = day;
}
public String toString() {
return day + "(" + date + ")";
}
public static void main(String[] args){
System.out.println(new DayDate("2010-07-30").nextDate());
}
}
分享到:
相关推荐
本篇将重点介绍Java操作日期时间的工具类,特别是通过`DateUtil.java`这个自定义工具类的实现方式。 `java.util.Date`是Java早期用来表示日期和时间的基础类,它包含了日期和时间的信息,但没有区分日期和时间。...
Java DateUtil.java日期时间操作类源代码,DateUtil类包含了标准的时间和日期格式,以及这些格式在字符串及日期之间转换的方法。比如日期格式转换成时间戳、得到格式化后的系统当前日期、转化日期格式"MM/dd/YY、MM....
Java操作时间工具类是开发者日常工作中经常会用到的模块,特别是在处理日期和时间相关的业务逻辑时。本工具类主要是为了方便地对日期和时间进行格式化、比较、计算等操作,提高开发效率。下面我们将详细探讨Java中...
因此,后来引入了`java.util.Calendar`,它是一个抽象类,提供了更灵活的日期和时间操作。然而,这两个类在Java 8之后已经被`java.time`包中的类所取代,后者提供了更加直观和人性化的API。 `java.time`包中的核心...
Java 日期比较工具类 各种日期操作及计算( 获取两个日期 间隔天数 间隔月数 格式化日期 )
首先,我们要了解Java中的基础日期类`java.util.Date`。这个类在早期的Java版本中被广泛使用,但其API设计存在一些问题,例如不支持时区处理等。`Date`对象表示自1970年1月1日00:00:00 UTC(协调世界时间)以来的...
本文将深入探讨Java中的日期时间工具类,特别是基于给定的"DateUtil.java"文件,我们将聚焦在传统`java.util.Date`和`java.text.SimpleDateFormat`以及Java 8的`java.time`包中的相关类。 首先,我们来看看`java....
这篇博客文章“java 日期操作工具类:包括计算两个时间相差距离多少天多少小时多少分多少秒”提供了一个实用的工具类,帮助开发者更方便地处理日期和时间差异。下面将详细解释这个工具类中的关键知识点。 1. **Java...
本文将深入探讨Java中的日期类操作,包括日期的加减运算,以及如何利用不同的日期类进行高效的时间管理。 ### 一、日期类的基本操作 #### 1. 使用Calendar类 `Calendar`类是Java中处理日期和时间的核心类之一,它...
Java 日期帮助类是编程中不可或缺的部分,尤其是在处理时间日期相关的业务逻辑时。在这个Java 日期帮助类中,包含了多达50个实用方法,涵盖了日期和时间的各种操作,旨在简化开发人员的工作,提高代码的可读性和可...
本篇文章将深入探讨如何在Java中进行日期时间的操作,主要基于标题和描述中提及的知识点。 首先,Java提供了一个内置的`java.util.Date`类来表示日期和时间。然而,这个类在设计上存在一些不足,比如非线程安全和不...
Java编程语言在处理日期和时间时,虽然内建了`java.util.Date`和`java.util.Calendar`类,但它们的使用并不总是那么直观和高效。为了解决这个问题,社区开发了Joda-Time库,它提供了更为强大且易用的日期时间操作...
`java.util.Date`是Java早期版本中的日期类,它可以表示从1970年1月1日(UTC)到现在的毫秒数。然而,这个类有一些设计上的缺陷,比如不支持时区和不可变性。因此,`java.time`包在Java 8中被引入,提供了更加强大和...
Java提供了多种工具类来帮助开发者处理日期和时间,使得我们可以方便地进行日期计算、格式化以及解析等操作。本篇将围绕Java中的日期工具类和时间工具类展开讨论,同时会涉及到日期时间的格式化。 首先,Java 8之前...
因此,`java.util.Calendar`类被引入,它是一个抽象类,提供更灵活的日期和时间操作,包括添加、减去日期字段和转换为不同格式的功能。尽管如此,`Calendar`仍然被认为复杂且不易用。 随着Java 8的发布,`java.time...
在Java编程语言中,时间日期处理是常见的任务之一,尤其在开发业务系统或者数据分析时,对日期进行格式化显得尤为重要。Java提供了多种处理日期和时间的API,包括`java.util.Date`、`java.text.SimpleDateFormat`、`...
如果你需要进行复杂的日期时间操作,如日期计算、时区转换或格式化,强烈建议使用`java.time`包,因为它提供了更直观、更易用的接口。 总之,Java中的日期工具类从最初的`java.util.Date`到现在的`java.time`包,...
java中常用的时间操作;如日期,时间戳,日历,字符串相互转化;时间差等常用日期功能。
详细介绍了Java8日期时间相关的api,列举了一些常用的方法,包含java.time、java.time.temporal、java.time.format包下的类和接口操作
这些类主要用于管理、操作和格式化日期和时间。以下是对这些类的详细说明: 1. **Date类**: - `Date`类在早期的Java版本中被广泛使用,但现在已逐渐被`Calendar`和`java.time`包中的类取代。它表示自1970年1月1日...