scala学习
1)集合
Collection存放单值类型数据
>List 有序,可重复【有序指存放顺序】
&ArrayList底层是数组
优点:查询效率高
缺点:增删效率低,涉及移位
&LinkedList底层是链表
优点:增删效率高,不需要移位,只需要改变节点的指向即可
缺点:查询效率低,查询集合中元素的时候,需要进行全链表的扫描
&Vector底层也是数组,只不过是线程安全的
>Set 无序,不可重复
&HashSet底层是HashMap
&SortedSet底层是TreeMap,让集合中的元素具备了排序的能力
TreeSet
Map存放键值对类型数据
>HashMap(如果key重复的话,会覆盖)数组+链表+红黑树
>SortedMap
TreeMap底层是可排序的二叉树,在向集合中放元素的时候,遵循左小右大的原则。
2)IO
按照传输内容分类:字节流,字符流
按照流向分类:输出流,输入流
字节:FileInputStream,FileOutputStream
字符:BufferReader,PrintWriter