日期与时间、 Date类型、 SimpleDateFormat、 Calendar、

=======================================================================
*日期与时间
 1.java中的时间:
    (1)java中采用标准类库的Date类型时间。使用距离一个固定时间点的
                   毫秒数的时间点来表示时间
    (2)固定时间点即纪元(UTC)。也就是1970年1月1日 00:00:00
    (3)UTC与GMT都是世界通用的时间格式   
   
    ( javase:标准版本的jdk,即类库为基本类库
      javaee:企业版本的jdk,基本类库满足不了企业开发的需求,因此此jdk中,含有其他与企业开发相关的类库
      javame:移动版本的jdk,jdk中含有与移动端开发的类型)
     
 2.Date类型
    java.util.Date类型,封装了日期与时间的信息。 
           之后里面的很多功能都弃用,渐渐的使用Calender类型来替代            
    
   (1)构造器
      Date():
                         创建一个封装当前系统时间的Date对象
      Date(long time):
                         创建一个距离纪元time毫秒的Date对象
                
   (2)常用方法
      long getTime();
                         返回距离纪元的毫秒数
      void  setTime(long time);
                         修改时间对象的毫秒数
========================================================================
*SimpleDateFormat:
     作用:此类型可以对Date进行格式化以及将字符串转成Date类型。            
  
 --常用构造器:
     SimpleDateFormat(String format):
                                创建一个指定格式的SimpleDateFromat对象。
 --常用方法:
     String format(Date date)          
                                作用是将参数date按照构造器里的格式进行格式化成字符串
     Date parse(String str)
                                作用是将指定字符串str转变成Date类型 
 --常用格式:
      yy:
      yyyy: 年
      MM:月
      dd:日
      
      HH:时(24制)
      hh:时(12制)
      mm:分
      ss:秒
      a:上下午
      E:星期              
                   
练习: 计算自己已经生活了多少毫秒  
========================================================================
*Calendar:
  (1)是日历类型,此类型封装了有关于日历的所有信息。主要用于计算时间分量。
              时间分量:日期和时间的一部分有效值。
  (2)Calendar
              是一个抽象类,提供了一方法getInstance()来获取一个通用的
              子类型对象,一般都是GregorianCalendar(格力高历,阳历)类型的对象。
  (3)时间分量常量:
     static int YEAR
     static int MONTH:日历里的月份是0-11。
     
     static int DATE
     static int DAY_OF_WEEK:默认从周日到周六,即1-7
     static int DAY_OF_MONTH
     .....
  (4)类型中提供了get(int field)方法,通过指定时间分量常量来获取
             相应的时间分量的值 
  (5)提供了set(int field,int value),进行设置时间分量值    "jmu8延迟修改效应"
         
  (6)提供了add(int field,int value),用于对当前日历信息通过
              时间分量来计算value后的日历信息
              
              注意:value值如果是负数,向前推算。 
  (7)提供了setLenient(boolean boo),用于设置Calendar的容错性
              当参数设置为false时,关闭Calendar的容错性555555555555            
          
          
 --其他方法:
     Date getTime(): 将日历对象转成Date对象
          
     void setTime(Date date): 将指定date日期转成日历对象的信息
          
     int getActualMaximum(int field): 获取指定时间分量的最大值 
             如:
                  指定Calendar.MONTH,获取的是11,即12月份
         Calendar.DATE,获取的是当前日历对象所在月天数的最大值

=======================================================================================================     
            练习:输出2016年每月的天数。          
          
   
   1.已知字符串:"this is a test of java". 
       按要求执行以下操作:
   (1) 统计该字符串中字母s出现的次数
   (2) 取出子字符串"test"
   (3) 用多种方式将本字符串复制到一个字符数组Char[] str中.
   (4) 将字符串中每个单词的第一个字母变成大写, 输出到控制台。
   (5) 用两种方式实现该字符串的倒叙输出。(用StringBuffer和for循环方式分别实现)
   (6) 将本字符串转换成一个字符串数组,要求每个数组元素都是一个有意义的额英文单     
        
   2.使用正则表达式匹配所输入的字符串是否是由数字和字母组成的内容,若不是则重新输入
     
   3.密码设置:长度为8-10、以字母开头、必须要有数字、必须要有下划线     
                  

猜你喜欢

转载自blog.csdn.net/yk_3215123/article/details/82931201