在java中 如何得到 系统当前时间 时间类型必须是Date且格式为"yyyy-MM-dd HH:mm:ss"
解决方案 »
- 请问java下,自定义表单现在一般采用什么技术!
- 两种调用方法的区别,大家都进来看看,发表发表意见
- web系统的 冷备
- 怎么自定义通讯协议?
- System.out.println(3+"__"+5+5);为什么输出3__55?
- 纠错:逻辑出问题了,谁给治治
- JDBC连接出错,求救
- 代码中含有com.borland.jbcl.layout.XYLayout包 代码打包后无法运行的问题
- 挑战Pattern
- 正在写一个优先队列(Priority Queue)的applet,但要求用O(ln(N))那个算法,哪位高手能给个java的例子?谢谢
- 在 JBuilder 2005 里,双击 JTree 的 valueChanged 事件后,一切控件都不见了,这到底是为什么呢?
- 一个j2se项目打成jar包在服务器运行后修改其中properties配置文件
java.util.Date d=new java.util.Date();
System.out.println(sdf.format(new Date()));
//对d进行处理
System.out.println(d);控制台输出:
yyyy-MM-dd HH:mm:ss
//对d进行处理
System.out.println(d);控制台输出:
yyyy-MM-dd HH:mm:ss
自己封装一个类class MyDate extends Date {
public MyDate() {super();}
public String toString() {
return String.format("%tF %tT", this, this);
}
}Date d = new Mydate();
System.out.println(d);
System.out.printf("%tF %tT\n", d, d);
d是一个对象,System.out.println(d);会调用d对象(首先,它是Object的子类,必有toString()方法)的toString()方法。楼主查一下Date类的源代码看看,它的toString()方法是怎么写的。
你想直接System.out.println(d);打印出某种格式是不可能的,因为默认情况下,对象要么调用自己的toString()方法,要么调用父类的toString()方法,这样一般不会输出你想要的格式。
那怎么办,
1、重写Date类的toString()方法,(这个价值不大,而且很容易惹出麻烦来),
2、用DateFormat这样的工具类:SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");System.out.println(sdf.format(new Date()));
3、自己包装Java提供的Date类:class MyDate extends Date {
public MyDate() {super();}
public String toString() {
return String.format("%tF %tT", this, this);
}
}
Date d = new Mydate();
System.out.println(d);(这个比较麻烦,不建议这样)。
方法2是开发中最常用的。很灵活。