import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateDemo {
public static void main(String[] args) throws ParseException {
SimpleDateFormat datef = new SimpleDateFormat("dd/mm/yyyy");
Date date1 = new Date(2010, 03, 03) ;
Date date2 = datef.parse("03/03/2010") ;
System.out.println( date1 );
System.out.println( date2 );
}
}
给出以下输出:
Sun Apr 03 00:00:00 MST 3910 Sun Jan 03 00:03:00 MST 2010
为什么会给出不同的结果?
最佳答案
新日期(2010, 03, 03):
这需要第一个参数为 year-1900,第二个参数为月(从 0 开始为一月),第三个参数为日
你得到输出为 'Sun Apr 03 00:00:00 MST 3910' => consutructor 将 1900 添加到作为第一个参数传递的年份。第 3 个索引的 4 月。
已弃用此构造函数。
输出 'Sun Jan 03 00:03:00 MST 2010' 的原因:您没有使用正确的格式, 如果您使用“dd/MM/yyyy”,那么您将获得正确的输出。
希望对你有帮助
关于java - 为什么此代码显示不同的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2370501/