黑马程序员技术交流社区

标题: 【石家庄校区】学习总结 [打印本页]

作者: 李志旭    时间: 2019-5-7 14:57
标题: 【石家庄校区】学习总结
1. Set集合的特点
   - 无序
   - 不能重复的元素
2. Hash值的概念
   - 概念:整数值
   - 规律:   默认情况下,不同hashCode肯定是不同的对象,相同的hashCode同一个对象或不同对象
3. HashSet集合的特点
   - 无序(没索引)
   - 不能重复的元素
   - hash表
4. LinkedHashSet集合的特点
   - 不能重复的元素
   - 能够按照存储的顺序读出数据
5. TreeSet集合的特点
   - 不能重复的元素
   - 能够按照自然顺序排序TreeSet()
   - 能够按照我们指定方式排序TreeSet(Comparator c)
     - 第一种方式:自定义类
       1. 实现java.lang.Comparable<Student>
       2. 重写compareTo(Student t)
       3. 返回一个int    >0 当前对象大 ==0相等    <0 小
     - 第二种方式:通过匿名内部类传给TreeSet的构造函数
       1. 实现java.util.Comparator
       2. 重新compare(Student t1,Student t2)
       3. 返回一个int    >0 当前对象大 ==0相等    <0 小
6. 泛型的概念及好处
   - 概念:参数化类型
   - 类型检查,编译
   - 不用类型转换
7. 泛型举例
   
[AppleScript] 纯文本查看 复制代码
- 泛型类
         public class Generic<T> {
             private T t;
         
             public T getT() {
                 return t;
             }
         
             public void setT(T t) {
                 this.t = t;
             }
         }
         
     - 泛型方法
           public class Generic {
               public <T> void show(T t) {
                   System.out.println(t);
               }
           }
   - 泛型接口
   -     public interface Generic<T> {
             void show(T t);
         }
         public class GenericImpl<T> implements Generic<T> {
             @Override
             public void show(T t) {
                 System.out.println(t);
             }
         }
         
     - 类型通配符
             //类型通配符:<?>
                   List<?> list1 = new ArrayList<Object>();
                   List<?> list2 = new ArrayList<Number>();
                   List<?> list3 = new ArrayList<Integer>();
           
                   System.out.println("--------");
           
           
                   //类型通配符上限:<? extends 类型>
           //        List<? extends Number> list4 = new ArrayList<Object>();
                   List<? extends Number> list5 = new ArrayList<Number>();
                   List<? extends Number> list6 = new ArrayList<Integer>();
           
           
                   System.out.println("--------");
           
                   //类型通配符下限:<? super 类型>
                   List<? super Number> list7 = new ArrayList<Object>();
                   List<? super Number> list8 = new ArrayList<Number>();
                   list8.add(new Integer(5));

1. 可变参数
   - public void test(int ...i)
   - for(int ii:i){}
2. 可变参数举例
   - Aarrays.asList()
   - List.of()
   - Set.of()

1. map集合的概述和特点
   - 健值对方式存储数据
   - 一个键对应一个值
   - 健不允许重复,值可以重复
   - 无序
2. map集合常用方法
   - 添加:put(key,value)
   - 删除:remove(key)
   - 清除:clear()
   - 判断健是否存在:containsKey(key)
   - 判断值是否存在:containsValue(value)
   - 是否为空:isEmpty()
   - 长度:size()
3. map结合读取数据方法
   - 获取单个元素:get(key)
   - 获取所有健:keySet()
   - 获取所有的值:values()
   - 获取健和值的集合:entrySet()      Map.Entry<k,v>
4. Collections常用方法
   - 排序:sort()
   - 反转:reverse()
   - 洗牌:shuffle()

1. File类的概述和构造方法
   - 概念:文件和目录的抽象表示
   - 构造方法
     - new File("完整路径");
     - new File("目录",“文件”);
     - File file1=new File("目录") File file2=new File(file1,"文件");
2. File类创建类方法
   - 创建文件:createNewFile();
   - 目录:mkdir() ;
   - 多级目录:mkdirs()
3. File类的判断和获取方法
   - 判断是否是目录:isDirectory()
   - 判断是否是文件:isFile()
   - 判断文件或目录是否存在:exists()
   - 名字:getName()
   - 路径:getPath()
   - 全路径:getAbsolutePath()
   - 获取目录下文件名:list()
   - 获取目录下文件:listFiles()
4. File类删除
   -         删除文件:delete()删除目录时,目录必须为空
5. 不死神兔例子
  - f(1)=1
   - f(2)=1
   - f(3)=f(2)+f(1)=1+1=2
   - f(4)=f(3)+f(2)=2+1=3
   - f(5)=f(4)+f(3)=2+1=3+2


6. 阶乘
   - jc(1)=1
   - jc(2)=2*jc(1)=2
   - jc(3)=3*jc(2)=6
   - jc(4)=4*jc(3)=24
   - jc(5)=5*jc(4)=120
7. 流概述
   - 概念:数据传输的总成
   - 分类:   输入流   输出流
   - 工作方式:字节流 字符流
8. 字节流写数据
   - 字节输出流:OutPutStream() FileOutPutStream("文件的路径")
   - 字节形式写数据:write() write(byte[]) write(byte[],off,len)
   - 释放资源:close()
9. 字节流写数据的两个小问题
   - 换行:/r/n
   - 如何进行追加写:new FileOutPutStream("文件的路径",true)
   -     finally try catch后必须要执行的代码块,做关闭资源的操作
10. 字节流读取数据
    - 字节输入流对象:InputStream() FileInputStream("")
    - 读数据的方法:read()     当-1时代表文件到结尾   read(byte[])返回值实际读取数据的长度,-1代表数据读取完成
    - 释放资源:close()






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2