㈠ java 中执行两次时间戳 为什么得到的一样,怎么改有差别,求大神
你好!
因为你的format到秒级别的,而你的计算机运行速度很快,运行这2次取时间之间的时间远远小于1秒,所有,你看到的结果就是一样的
你尝试着改成毫秒级别"yyyy-MM-dd-HH-mm-ss.SSS"试试
如果还不行的话,说明你的计算机运行速度还是太快,2次之间的时间小于1毫秒,
那么你可以让线程等待1毫秒就能看到差别了,希望能帮到你
publicstaticvoidmain(String[]args){
SimpleDateFormatsf=newSimpleDateFormat("yyyy-MM-dd-HH-mm-ss.SSS");
Stringdate=sf.format(newDate());
System.out.println(date);
try{
Thread.sleep(1);
}catch(InterruptedExceptione){
e.printStackTrace();
}
SimpleDateFormatsf1=newSimpleDateFormat("yyyy-MM-dd-HH-mm-ss.SSS");
Stringdate2=sf1.format(newDate());
System.out.println(date2);
㈡ java中14位时间戳怎么获取
按你描述,应该抄想要的是Unix时间戳,即当前时间到1970年1月1日0:0:0的毫秒数据。
在java里面Data类型可以直接用API获取。
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss")
String value=20150704000000;
df.parse(value).getTime(); 就是你想要的时间戳。
具体可以查看Date类型的API
以及http://tool.chinaz.com/Tools/unixtime.aspx?jdfwkey=pqr111
㈢ JAVA 日期转换时间戳
可以查看Java的API中的format
㈣ 问一下java里面timestamp时间类型的怎么比较大小,比如说我想判断我的time是不是在18点以后,该怎么写
先转成 Calendar, 再取其中的 HOUR_OF_DAY 这个域, 看是否大于 18
比如
Timestamp ts = new Timestamp(System.currentTimeMillis());
Calendar cal = Calendar.getInstance();
cal.setTime(ts);
System.out.println(cal.get(Calendar.HOUR_OF_DAY));
两个 Timestamp 本身可以直接比, 它实现了 Comparable 接口的.
㈤ java输入三个日期比较大小
使用Calendar类;参考:
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String aa = "2012-1-12";
String bb = "2010-12-01";
Calendar cal = Calendar.getInstance();
Calendar cal2 = Calendar.getInstance();
cal.setTime(sdf.parse(aa));
cal2.setTime(sdf.parse(bb));
//
cal.add(Calendar.MONTH, 3);
if (cal.after(cal2)) {
System.out.println("aa + 3个月 在 bb 之后" );
}
cal.setTime(sdf.parse(aa));
cal.add(Calendar.DATE, 5);
if (cal.after(cal2)) {
System.out.println("aa + 5天 在 bb 之后" );
}
} catch (Exception e) {
}
楼主一定能够举一反三。
㈥ java怎么判断是否为时间戳
时间戳是指从1970年1月1日到现在的时间.通常为秒或者毫秒.
理论上任何一个int或者long都能解析成为一个时间.
如果一定要检测,则需要给定一个条件,比如从什么时候,到什么时候.可以比对判断.