Date、DateFormat、Calendar、System、Math类总结

java.util.Date:
  构造方法
    public Date() 空参构造,返回当前时间
    public Date(long 毫秒值) 指定毫秒值的时间
  普通方法
    long getTime() 获取毫秒值
    viod setTime() 设置毫秒值

  Date 指定毫秒数和Date类型的转换
    Date d = new Date();
    重写toString方法:Sat Mar 25 15:33:29 CST 2017

java.text.DateFormat 日期格式化类 抽象类
  将日期和指定格式字符串之间做转换

  SimpleDateFormat extends DateFormat
    构造方法
      public SimpleDateFormat() 空参构造 17-3-25 上午9:09 默认的格式
      public SimpleDateFormat(String pattern) 用给定的格式创建对象(正则表达式)
    普通方法
      String format(Date date) 将日期装换为指定格式的字符串
      Date parse(String source)将给定的字符串按照给定的格式解析为Date对象
      如果给出的字符串不能匹配DateFormat的格式,就抛出ParseException异常

java.util.Calendar: 用来取代Date对象的一个日历类,它的构造方法里面会判断当前的时区
  Calendar 可以完成Date与此Calendar类子类之间的日期转换
  创建一个Calendar对象 因为Calendar是一个抽象类,无法直接创建对象
    A:创建子类对象(一般不用)
    B:提供了一个静态方法getInstance(),方法中处理时区问题,返回一个子类对象
      Calendar c = Calendar.getInstance();
      Calendar 也是一个时间对象,只是里面存储的信息比Date更完善
      /*
       *java.util.GregorianCalendar[time=1490428691311,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.
       *[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],firstDayOfWeek=1,
       *minimalDaysInFirstWeek=1,ERA=1,YEAR=2017,MONTH=2,WEEK_OF_YEAR=12,WEEK_OF_MONTH=4,DAY_OF_MONTH=25,

         *DAY_OF_YEAR=84,DAY_OF_WEEK=7,DAY_OF_WEEK_IN_MONTH=4,AM_PM=1,HOUR=3,HOUR_OF_DAY=15,MINUTE=58,

       *SECOND=11,MILLISECOND=311,ZONE_OFFSET=28800000,DST_OFFSET=0]

      */
      可以看出,Calendar里面可以打印出日期的各种信息,但是字段太多,不容易记住其位置,所以定义静态常量
      直接见名知意明确获取的是哪一个字段,静态常量直接对应索引值

  
普通方法:
    int get(int field(静态常量)) 获取日历信息
    void set(int field, int value) 设置指定字段的时间
    void set(int year, int month, int date)直接设置年月日
    void add(int field, int value) 给指定字段添加时间
    Date getTime() 将日历对象转化成日期对象
    long getTimeMillis() 获取日历的毫秒数

java.lang.System
    
构造方法被私有 不能创建对象 所有方法都是静态的 可以类名直接调用

    方法
      static long currenTimeMillis() 获取当前时间毫秒值
      exit(int i) 0正常退出,其它非正常退出
      gc() 垃圾回收
      arraycopy() 复制数组
      getProperty(String key) 按照指定的键获取操作系统的属性

java.lang.Math
    数学工具类(底层类全部定义为静态,方便调用)

    static int abs(int a)返回绝对值
    static long round(double a) 四舍五入
    static int round(float a)
    static double ceil(double a) 向上取整
    static double floor(double a) 向下取整
    static int max (int a, int b)两个数最大值
    static int min (int a, int b)两个数最小值
    static double pow(double a, double b) a的b次幂
    static double random()随机生成一个0-1之间的小数
    new Random().nextDouble() 生成一个小数(Random类中的方法)

基础数据类型和引用数据类型之间的转换
java.lang.Integer
    String --- int
      static int parseInt(String s) //Integer.parseInt()
      Integer i = Integer.valueOf(String s) //将字符串转换为Integer
      int i1 = i.intValue() //将Integer拆箱
    int --- String
      A:"" + a(int);
      B:String.valueOf(int a);
      C:包装类的toString();

正则表达式:正确规则的字符串
    所有匹配规则的功能都在使用正则表达式
    String类
      String[] split(String regex)按照指定格式进行分割
      boolean matches(String regex) 是否与指定格式一致

posted on 2017-03-25 23:26  刚反面  阅读(99)  评论(0编辑  收藏  举报

导航