您的位置:

java日期,java date日期比较

本文目录一览:

java如何创建一个指定的日期对象?

第一个问题:

这有好几种做法都可以实现:

1.new一个java.util.Date对象,调用它的setYear、setMonth等等方法,设置你要的年月日。不过这种做法不推荐,因为setYear等方法已经过时了。

2.new一个java.util.SimpleDateFormat类的实例,构造方法可以指定日期格式,例如yyyy-MM-dd,其中yyyy表示四位年份,MM表示两位月份,dd表示两位日期。然后通过调用这个SimpleDateFormat实例的parse方法可以解析获得指定日期的Date对象。

代码示例:

SimpleDateFormat

sdf

=

new

SimpleDateFormat("yyyy-MM-dd");

Date

d

=

sdf.parse("2014-03-02");

3.通过java.util.Calendar类的静态方法getInstance()获得一个日历类实例,然后调用此实例的set(int

year,

int

month,

int

date)

设置日历字段

YEAR、MONTH

DAY_OF_MONTH

的值,然后调用实例的getTime()方法可以获得指定日期的Date对象

第二个问题:

参考上一个问题的第3种做法,Calendar.getInstance()获得的是当前时刻的日历实例对象,调用此实例对象的setLenient(false)设置日历解释为宽松模式,然后再通过roll(int

field,

boolean

up)方法在给定的时间字段上添加或减去(上/下)单个时间单元(例如你要的“一个月”时间单月),最后通过getTime()方法获得Date对象。

这两个问题都是很简单的,你找份JDK

API文档看看就可以找到办法了,自己多看多想会更好。

如何将JAVA DATE类型的日期 转换成指定格式类型的 (如:YYYY-MM-DD) 的 DATE类型数据?

Date类型并没有格式,只有转换成String格式的时候让格式化显示。

new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")format(new Date());

Calendar calendar = Calendar.getInstance();

int year = Integer.parseInt(datetime.substring(0,4));

int month = Integer.parseInt(datetime.substring(5,7));

int date = Integer.parseInt(datetime.substring(8,10));

int hour = Integer.parseInt(datetime.substring(11,13));

int minute = Integer.parseInt(datetime.substring(14,16));

//int second = Integer.parseInt(datetime.substring(17,19));

if(calendar.get(Calendar.YEAR)year){

int y = calendar.get(Calendar.YEAR)-year;

扩展资料:

Date类可以在java.util包中找到,用一个long类型的值表示一个指定的时刻。它的一个有用的构造函数是Date(),创建一个表示创建时刻的对象。getTime()方法返回Date对象的long值。

import java.util.*;

public class Now {

public static void main(String[] args) {

Date now = new Date();

long nowLong = now.getTime();

System.out.println("Value is " + nowLong);

参考资料来源:百度百科-java日期函数

java里日期循环方法

可以通过日期的add(Calendar.MONTH, 1)方法进行月份切换,输出每个满足条件的值

Date d1 = new SimpleDateFormat("yyyy-MM").parse("2015-6");//定义起始日期

Date d2 = new SimpleDateFormat("yyyy-MM").parse("2016-5");//定义结束日期

Calendar dd = Calendar.getInstance();//定义日期实例

dd.setTime(d1);//设置日期起始时间

while(dd.getTime().before(d2)){//判断是否到结束日期

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");

String str = sdf.format(dd.getTime());

System.out.println(str);//输出日期结果

dd.add(Calendar.MONTH, 1);//进行当前日期月份加1

}

输出结果:

java三个int表示日期

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.print("请输入年份:");

int year = scanner.nextInt();

System.out.print("请输入月份:");

int month = scanner.nextInt();

System.out.print("请输入几号:");

int day = scanner.nextInt();

Calendar c =Calendar.getInstance();

c.set(year, month - 1, day);

Date date = c.getTime();

Date currDate = new Date();

SimpleDateFormat fmt = new SimpleDateFormat("yyyy年MM月dd曰");

System.out.println("输入的日期为:"+fmt.format(date));

System.out.println("当前日期为:"+fmt.format(currDate));

if(date.after(currDate)){

System.out.println("输入的日期比当前日期【晚】");

} else if(date.before(currDate)){

System.out.println("输入的日期比当前日期【早】");

} else{

System.out.println("输入的日期与当前日期【一样】");

}

}