Java 中的系统时间
currentTimeMillis()
System.currentTimeMillis返回的是从1970.1.1 UTC 零点开始到现在的时间,精确到毫秒,平时我们可以根据System.currentTimeMillis来计算当前日期,星期几等,可以方便的与Date进行转换
返回以毫秒为单位的当前时间。注意,当返回值的时间单位是毫秒时,值的粒度取决于底层操作系统,并且粒度可能更大。例如,许多操作系统以几十毫秒为单位测量时间。
请参阅 Date 类的描述,了解可能发生在“计算机时间”和协调世界时(UTC)之间的细微差异的讨论。
nanoTime()
System.nanoTime提供相对精确的计时,但是不能用他来计算当前日期
返回最准确的可用系统计时器的当前值,以毫微秒为单位。
此方法只能用于测量已过的时间,与系统或钟表时间的其他任何时间概念无关。
返回值表示从某一固定但任意的时间算起的毫微秒数(或许从以后算起,所以该值可能为负)。此方法提供毫微秒的精度,但不是必要的毫微秒的准确度。它对于值的更改频率没有作出保证。在取值范围大于约 292 年(263 毫微秒)的连续调用的不同点在于:由于数字溢出,将无法准确计算已过的时间
JDK中有一个final class System
其中提供了一些输入输出等方法,并且有毫秒级的系统时间和毫微秒的nanotime
import java.text.SimpleDateFormat;
import java.util.Calendar; public class SysTime { public static void main(String[] args) { SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String strsystime = sf.format(System.currentTimeMillis());//系统当前时间
String strsysnanotime = sf.format(System.nanoTime());//系统当前时间 System.out.println(strsystime);
System.out.println(strsysnanotime); long systime = System.currentTimeMillis();
System.out.println(Calendar.getInstance().getTime().getTime());
System.out.println(systime);
System.out.println(systime=(systime/1000));
System.out.println("秒:"+ systime%60);
System.out.println(systime=(systime/60));
System.out.println("分钟:"+systime%60);
System.out.println(systime=(systime/60));
System.out.println("小时:"+systime%24); long nano = System.nanoTime();
System.out.println(nano);
}
}
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date; public class GetTime { public static void main(String[] args) { Date date = new Date();
long time = date.getTime() ;
System.out.println(time); Calendar calendar = Calendar.getInstance();
System.out.println(Calendar.getInstance().getTime().getTime());
calendar.add(Calendar.MINUTE, -1);
System.out.println(calendar.getTime().getTime()); Calendar calendar1 = Calendar.getInstance();
System.out.println(calendar1.getTime().getTime());
calendar1.add(Calendar.SECOND, -90);
System.out.println(calendar1.getTime().getTime()); Calendar calendar2 = Calendar.getInstance();
calendar2.add(Calendar.DATE, 1);
System.out.println(calendar2.getTime().getTime());
System.out.println("==============="); long systime = System.currentTimeMillis();
System.out.println(Calendar.getInstance().getTime().getTime());
System.out.println(systime);
System.out.println(systime=(systime/1000));
System.out.println("秒:"+ systime%60);
System.out.println(systime=(systime/60));
System.out.println("分钟:"+systime%60);
System.out.println(systime=(systime/60));
System.out.println("小时:"+systime%24); }
}
当前Java 中除了System类中获取系统时间之外,还有Date,Calender等可以获取系统时间
其中Date是一个普通的类,实现了implements java.io.Serializable, Cloneable, Comparable<Date>
Calendar是一个抽象类, 实现了implements Serializable, Cloneable, Comparable<Calendar>
System是一个最终类
Java 中的系统时间的更多相关文章
- Java中获取系统时间的四种方式
第一种: Date day=new Date(); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss" ...
- java总结:Java中获取系统时间(年、月、日)以及下拉菜单默认选择系统年、月、日的方法
<!-- 获取系统当前的年.月.日 --> <%@ page import="java.util.*"%> <% Calendar calendar= ...
- Java中的系统时间
System.currentTimeMillis()产生一个当前的毫秒,这个毫秒其实就是自1970年1月1日0时起的毫秒数,Date()其实就是相当于Date(System.currentTimeMi ...
- java中获取系统属性以及环境变量
java中获取系统属性以及环境变量 System.getEnv()和System.getProperties()的差别 从概念上讲,系统属性 和环境变量 都是名称与值之间的映射.两种机制都能用来将用户 ...
- Java 如何获取系统时间
Java 如何获取系统时间 import java.text.SimpleDateFormat; import java.util.Date; public class Test { public s ...
- java中获取系统的当前时间
转自:http://www.cnblogs.com/Matrix54/archive/2012/05/01/2478158.html 一. 获取当前系统时间和日期并格式化输出: import java ...
- Java 获取当前系统时间方法比较
转载: http://blog.csdn.net/zzjjiandan/article/details/8372617 一. 获取当前系统时间和日期并格式化输出: import java.util.D ...
- Java中日期和时间的相关问题
1.java.lang.System类 System类提供的public static long currentTimeMillis()用来返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位 ...
- 通过java输出当前系统时间
获取当前系统时间和日期并格式化输出: import java.util.Date; import java.text.SimpleDateFormat; public class NowString ...
随机推荐
- [vue]vue基础复习项案例stepbystep
看本篇第二次复习内容即可. 还有一些 文档了这个如 https://www.cnblogs.com/iiiiiher/p/9508733.html https://www.cnblogs.com/ii ...
- React browserHistory.push()传参
1.browserHistory.push({ "pathname":'/interface_log', state: ...
- 面试 Java 高级后端开发,要准备哪些知识点?
其实公司肯花时间让你去面试,前提条件一定是通过你的简历,一定发现了你和公司的匹配点,也就是说,一定是有录用意向的. 在技术面试的时间段里(最长1个小时),你如果能展现你的优势那是最好的,但如果你做不到 ...
- NodeMan介绍
近年来,随着nodejs的突飞猛进,node项目数量增长迅猛,node项目完美的阐释了“开箱即用”的理念.小到创业公司,大到阿里这样的巨头,背后均有node的身影. node项目基于Chrome的V8 ...
- mybatis增强
MyBatis SQL参数传递(掌握) SQL映射器Mapper接口(掌握)Myb atis批量操作(理解掌握) (多对一)关联映射(掌握) (一对多,多对多)集合映射 MyBatis原理回顾(Obj ...
- vue页面传参
1.传的参数是数组 传递参数的页面 let setStr = encodeURIComponent(JSON.stringify(this.tableData)); this.$router.push ...
- py001
pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple -------------------------------- ...
- 异步 async & await
1 什么是异步 异步的另外一种含义是计算机多线程的异步处理.与同步处理相对,异步处理不用阻塞当前线程来等待处理完成,而是允许后续操作,直至其它线程将处理完成,并回调通知此线程. 2 异步场景 l 不 ...
- C#-----线程安全的ConcurrentQueue<T>队列
ConcurrentQueue<T>队列是一个高效的线程安全的队列,是.Net Framework 4.0,System.Collections.Concurrent命名空间下的一个数据 ...
- Replica Set + sharding搭建mongodb集群
先上几个用到的yaml文件,以后有时间了再更新,我是借鉴的https://blog.csdn.net/zeroctu/article/details/71082168,本人按照上面的搭建,是可行的,不 ...