讲师笔记,Java基础学习之路之day15——可变字符串,日期类,日历类,内部类

StringBuffer    可变的字符序列   
          StringBuilder用法和StringBuffer基本相同
          String 不可变的字符序列
          
          常用方法:
              String toString(): 转换为String字符串
              StringBuffer append() :在末尾追加内容
              int length(): 获取字符串长度
              StringBuffer deleteCharAt(int index) 删除指定index位置的字符
              insert(int offset,xxx): 在某个位置插入内容xxx
              StringBuffer replace(int start, int end, String str) 
              把start和end之间的内容用指定字符串进行替换
              StringBuffer reverse() 实现字符串反转
              StringBuffer delete(int start, int end) 
             从start处开始删除到end-1处结束
 
            当对String进行反复的修改的时候,不建议使用String进行拼接字符串,
            而是使用StringBuffer和StringBuilder
        
        StringBuffer和StringBuilder区别:
            StringBuffer是线程安全的,执行效率相对较低。
            StringBuilder是线程不安全的,效率相对较高。
        
        String 和 StringBuffer区别:
            String是不可变字符串,String对象内的内容初始化后不可以修改。
            StringBuffer是可变字符串,StringBuffer对象内的内容初始化后还可以修改

    ---------------------------------------------------------
    Date 日期类
        java中内部表示 日期 只有long类型 一个日期用毫秒数来表示
        
        构造方法:
            Date() : 获取当前系统日期
            Date(long times):获取指定时间的日期
        常用方法:
            long getTime()     获取日期的毫秒数
            void setTime(long time)  设置日期的毫秒数
            boolean after(Date when) 
                  测试此日期是否在指定日期之后。 
             boolean before(Date when) 
                  测试此日期是否在指定日期之前。 
              int compareTo(Date anotherDate) 
                  比较两个日期的顺序。
                   
     DateFormat类  日期格式化   
         常用方法:
             String format(Date date) 将日期转成 字符串
             Date parse(String str)       将字符串 转成 日期
                 如果日期格式 和字符串格式  不匹配会报错(ParseException)
     
     Calendar日历类 
         获取Calendar对象:
             Calendar.getInstance();
         常用方法:
             void setTime(Date date) 
                  使用给定的 Date 设置此 Calendar 的时间。 
             Date getTime()
                 返回一个表示此 Calendar 时间值的date对象
             void setTimeInMillis(long millis) 
                  用给定的 long 值设置此 Calendar 的当前时间值。 
             long getTimeInMillis() 
                  返回此 Calendar 的时间值,以毫秒为单位。
              void set(int field,int value) 
                  将给定的日历字段设置为给定值。
              void set(int year, int month, int date) 
                  设置日历字段 YEAR、MONTH 和 DAY_OF_MONTH 的值。 
              int get(int field) 
                  返回给定日历字段的值。 
              add(int field, int amount) 
                  根据日历的规则,为给定的日历字段添加或减去指定的时间量。
      --------------------------------------------------
      
                 内部类
                        定义在一个类的内部的类
      
      class Person{
          class Dog{
          }
      }
                内部类的分类:
                          成员内部类(静态内部类 非静态内部类)
                          局部内部类:  定义在一个方法内部的类
                           匿名内部类
               interface IA{
                 public void methodA();
                }
                
               IA b = new IA(){
                    @Override
                    public void methodA() {
                        System.out.println("1234567");
                    }
                };
    
    --------------------------------------------------
    对象排序 Arrays.sort()    
    枚举
    泛型
    集合
    IO
    ---------------------------------------------------
    作业:
        1. 给定一个int数字,求该数字的32位二进制的字符串形式
            3--》    0000 ... 0000 0011 (String)  提示:& 
        
        2. 在控制台输入一个yyyy格式的年份的字符串m如2017,然后再输入一个任意的非负整数n如3,
            打印从m开始起始往后n年的所有既是13号又是周五的日期
            

猜你喜欢

转载自blog.csdn.net/u011189148/article/details/81417118