判断距离指定日期还有多少天
import java.util.*;
public class Datedate {
public static void main(String args[]) {
Date d1=new Date();
int s1 = Integer.parseInt(args[0])-1900;
int s2 = Integer.parseInt(args[1])-1;
int s3 = Integer.parseInt(args[2]);
Date d2=new Date(s1,s2,s3);
System.out.println((d2.getTime() - d1.getTime()).toString());
}
}
这样怎么错了?有点晕不太会看JDK文档
import java.util.*;
public class Datedate {
public static void main(String args[]) {
Date d1=new Date();
int s1 = Integer.parseInt(args[0])-1900;
int s2 = Integer.parseInt(args[1])-1;
int s3 = Integer.parseInt(args[2]);
Date d2=new Date(s1,s2,s3);
System.out.println((d2.getTime() - d1.getTime()).toString());
}
}
这样怎么错了?有点晕不太会看JDK文档
解决方案 »
- 这个JOptionPane怎么不用实例化就可以使用他的构造方法?
- java cs jb6 报表如何制作,请给思路
- 关于JAVA BEAN
- 怎么把其它类型的数据如int,short,转换成字节数组。 还有怎么转回来。
- 一个比较弱的输出问题!请帮忙!谢了!
- 【】帮我看个程序,最后那个输出怎么解决???
- Oracle连接中下面的驱动有什么不同Class.forName(dirveName);与Class.forName(dirveName").newInstance();我很迷惑,望指点
- setHeader()/addHeader()怎么不起作用?
- 新手求救(很简单的问题)
- 求助java socket
- 基因算法bug(程序不大长,分数大大有)
- jdk1.6.0_04下载
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Scanner input = new Scanner(System.in);
System.out.println("请输入截止日期:(YYYY-MM-DD)");
String str = input.next();
Date start = new Date();//开始日期
Date end = sdf.parse(str);//截止日期
long time = end.getTime() - start.getTime();//截止日期和开始日期的时间差,为long型的
System.out.println(time / (24 * 60 * 60 * 1000));//24 * 60 * 60 * 1000 为一天的毫秒数
}
}
package cn.siat;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;public class ComputeDate { private static final long TIME_MILLIS = 1000 * 60 * 60 * 24;
private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); /**
* 计算天数
* @param fromDate起始日期
* @param toDate 结束日期
* @return 间隔天数
*/
public static Long computeDayBetweenCanlendar(Date fromDate, Date toDate) { Calendar fromCalendar = Calendar.getInstance();
Calendar toCalendar = Calendar.getInstance();
fromCalendar.setTime(fromDate);
toCalendar.setTime(toDate); return (toCalendar.getTimeInMillis() - fromCalendar.getTimeInMillis())
/ TIME_MILLIS;
} public static void main(String[] args) throws ParseException { Date fromDate = null;
Date toDate = null;
try {
fromDate = sdf.parse("2010-12-14");
toDate = sdf.parse("2010-12-17");
} catch (Exception e) {
throw new IllegalArgumentException("参数非法!");
} System.out.println(computeDayBetweenCanlendar(fromDate, toDate)); }}
你吃饭总不用筷子,还总让别人喂你吃啊.!!!!你这样个态度真不适合当程序员,一点求知的态度都没有,该 干嘛干嘛去吧
的toString去掉,long型是基本类型
Calendar cal = Calendar.getInstance();
这个对象有一个得到指定日期距历元之间的毫秒数!
楼主仔细想想我们一天时间的毫秒数是固定的,所以我们可以求出指定日期到历元的毫秒数和当前日期距历元的毫秒数,得到两个毫秒数之后当前日期的毫秒数减去指定日期的毫秒数然后再除以一天所拥有的毫秒数得到的商就是距离指定日期由多少天了!
{
//你需要指定的第一个时间
Calendar oldcal = Calendar.getInstance();
//当前时间
Calendar newcal = Calendar.getInstance();
//设置时区
TimeZone tz = TimeZone.getTimeZone("GMT");
oldcal.setTimeZone(tz);
newcal.setTimeZone(tz);
oldcal.clear();
//设置你要指定的日期
oldcal.set(1970, 0, 1);
newcal.set(1970,0,8);
float da=(newcal.getTimeInMillis()-oldcal.getTimeInMillis())/(24*60*60*1000);
System.out.println("两个日期之间的差值为"+da+"天");
}
如此便可确保你的程序没有错误了!
对于一个刚学JAVA正在不断了解JAVA的人来说,你这话说的太不负责了~我就不信你一开始用JDK就NB到想要什么都能立刻在JDK文档找到相应的类~