发布网友 发布时间:2022-04-24 11:33
共3个回答
热心网友 时间:2022-06-14 09:39
假定两个日期用相同的时间格式
import java.text.*;
import java.util.Date;
public class DateTest {
String dateFormat = "yyyy-MM-dd";
SimpleDateFormat format = new SimpleDateFormat(dateFormat);
public static void main(String[] args) {
DateTest t = new DateTest();
String date1 = "2012-02-26";
String date2 = "2012-03-04";
t.process(date1, date2);
}
private void process(String date1, String date2){
if(date1.equals(date2)){
System.out.println("两个日期相等!");
return;
}
String tmp;
if(date1.compareTo(date2) > 0){ //确保 date1的日期不晚于date2
tmp = date1; date1 = date2; date2 = tmp;
}
tmp = format.format(str2Date(date1).getTime() + 3600*24*1000);
int num = 0;
while(tmp.compareTo(date2) < 0){
System.out.println(tmp);
num++;
tmp = format.format(str2Date(tmp).getTime() + 3600*24*1000);
}
if(num == 0)
System.out.println("两个日期相邻!");
}
private Date str2Date(String str) {
if (str == null) return null;
try {
return format.parse(str);
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
}
热心网友 时间:2022-06-14 09:39
//如何得到一年的所有星期二的日期?
GregorianCalendar h=new GregorianCalendar();
h.set(Calendar.DAY_OF_YEAR, 1); //今年的第一天
GregorianCalendar v=new GregorianCalendar();
v.set(Calendar.DAY_OF_YEAR, 1);
v.add(Calendar.YEAR, 1); //明年的第一天
v.add(Calendar.DATE, -1); //今年的最后一天
while (!v.equals(h))
{
if( h.get(Calendar.DAY_OF_WEEK)==3)
{
System.out.println(h.getTime());
}
h.add(Calendar.DATE, 1);
}
上面一个是得到一年中所有星期2,new了2个 日历类,你把那2个换成你要的间隔日期,还有判断星期2你去掉,就可以了,我也懒得改,这个很容易看懂的 ,
注意:日历 你把那些set()里面的东西改下就OK了,具体参数你自己改,
热心网友 时间:2022-06-14 09:40
敲了一段代码,假定两个日期用相同的时间格式。测试通过。满意请采纳!
import java.text.*;
import java.util.Date;
public class DateTest {
String dateFormat = "yyyy-MM-dd";
SimpleDateFormat format = new SimpleDateFormat(dateFormat);
public static void main(String[] args) {
DateTest t = new DateTest();
String date1 = "2012-02-26";
String date2 = "2012-03-04";
t.process(date1, date2);
}
private void process(String date1, String date2){
if(date1.equals(date2)){
System.out.println("两个日期相等!");
return;
}
String tmp;
if(date1.compareTo(date2) > 0){ //确保 date1的日期不晚于date2
tmp = date1; date1 = date2; date2 = tmp;
}
tmp = format.format(str2Date(date1).getTime() + 3600*24*1000);
int num = 0;
while(tmp.compareTo(date2) < 0){
System.out.println(tmp);
num++;
tmp = format.format(str2Date(tmp).getTime() + 3600*24*1000);
}
if(num == 0)
System.out.println("两个日期相邻!");
}
private Date str2Date(String str) {
if (str == null) return null;
try {
return format.parse(str);
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
}