zoukankan      html  css  js  c++  java
  • 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是一个最终类

  • 相关阅读:
    js中BOM和DOM的区别
    正则表达式
    第一个网页
    RegExp
    pseudoclasses&伪元素
    自我介绍
    DOM document 对象
    神经网络学习小节
    果然是神经网络
    果然是实践出真知啊
  • 原文地址:https://www.cnblogs.com/qianjinyan/p/10768235.html
Copyright © 2011-2022 走看看