Java基础知识第三篇-常用类、库
2017-09-12 10:55
330 查看
常用类库
包package:在同一个类中只能有一个public,且这个类名必须和文件名一致
包的形式也是一种封装
静态导入:导入包内的所有的静态方法。作用:简化书写
访问权限
public protected default(默认) private
可以修饰类的修饰符:public private(只能修饰内部类)
集合框架(Collection)
集合理解参考网址
数组和集合的区别:
数组长度固定,集合长度可变
数组只能放置一种数据类型,集合可以放置不同的数据类型(任何类型)
Collection分类
Collection属于
java.util包
Iterator(迭代器)的使用
迭代器可简单理解为一次性的ArrayList a=new ArrayList( );
Iterator it=a. iterator();
注意:当使用Iterator遍历集合时,不能同时使用集合本身对集合进行增删改操作,可以使用ListIterator中的方法来进行操作
List
List为有序集合,所以可以根据索引来获取每一个元素。有序指的是:是不是和存入顺序一致。
List特有方法:
asList()接收一个数组,生成一个固定长度的list
List的常用子类:
ArrayList:底层数据结构为数组结构,线程不安全,执行效率高LinkedList:底层数据结构为链表结构,查询,修改比较慢,删除,添加比较快。
Vector:线程安全但效率低
Set
特点:无序且不可重复,无序指的是与储存的顺序不一致。Set的常用子类:
HashSet:底层数据结构为哈希表结构,储存位置不固定。不注重顺序(顺序由系统生成的哈希值决定),只注重唯一性。HashSet的比较过程:当向HashSet中存入一个元素时,HashSet会调用该对象的hashCode()方法来得到该对象的hashCode值,及需要通过equals()方法比较,返回值都为true时才认为相同。
TreeSet:底层数据结构为二叉树,不仅注重唯一性,还注重顺序。使用时必须使用外部比较器
二叉树的特点:每一个根节点大于它左边的所有元素,小于它右面的所有元素。且不论TreeSet或者TreeMap内的对象必须实现Comparable接口,重写compareTo方法否则不能操作
比较器
Comparable(接口)是默认(内部)的比较器,其中方法为compareTo(Object o)
ComparaTor是外部自行创建的(自定义)比较器,其中方法为
compare(Object o1,Object o2)使用时必须要传入一个新的比较器(ComparaTor)。
Comparator的优先级大于Comparable
- ComparaTor接口的使用:
1.创建一个类来实现Comparator接口,实现compare方法
2.使用构造方法传入实现了ComparaTor的对象作为实参
Map
MapMap的子类:
Hashtable:底层结构为哈希表结构,不可使用null来充当键和值,同步,效率低,出现于jdk1.0;使用HashSet值作为key的值,key的值只关注唯一性HashMap:底层结构为哈希表结构,可以使用null来充当键和值,不同步,效率高,出现于jdk1.2;使用TreeSet值作为key的值,key 的值不仅关注唯一性,还关注顺序
TreeMap:底层结构为二叉树,键值必须是自然有序。
Collections 工具类
常用方法:binarySearch二分法查找(可指定比较器)
max返回集合的最大值(可指定比较器)
min返回集合的最小值(可指定比较器)
reverseOrder返回一个比较器,强行逆转一个比较器。
sort排序(可指定比较器)
Arrays工具类
常用方法:Arrays. binarySearch()二分法查找
Arrays.sort( )升序排序
Arrays.toString( )返回指定内容的字符串表示
可变参数:为了简化书写而出现(jdk1.5) 注意:可变参数必须写在最后一个
泛型(jdk1.5版本后出现)
意义:为了限制集合中储存的类型。泛型可以将运行时的错误提前到了编译阶段,提高了安全性,避免了强制类型转换。向下限定:
<? extends E>?—通配符
向上限定:
<? super E>
相关文章推荐
- java基础知识——第三篇
- JAVA基础知识之IO——Java IO体系及常用类
- Java的基础知识3——常用类
- Java基础知识 六 API常用类之String Scanner
- Java基础知识 七(API常用类StringBuffer、Integer、CharacterMath 等)
- Java基础知识3:异常处理,数组与常用类
- JAVA基础知识之IO——Java IO体系及常用类
- JAVA基础知识之IO——Java IO体系及常用类
- JAVA基础知识(一)
- Java基础知识回顾之四 ----- 集合List、Map和Set
- 学习Spring必学的Java基础知识(1)----反射
- 黑马程序员--java实现约瑟夫环问题--java学习日记1(基础知识)
- ojcp-sjcpJAVA认证考试JAVA基础知识考点总结(1)--汇总
- 【Java学习笔记】基础知识学习17【文件文本读取写入】
- Java基础知识➣面向对象(八)
- JAVA基础知识(12)-----同步
- Java基础知识
- Java基础(极客)——01、Java编程基础知识入门:变量与数据类型
- Java基础知识强化07:打印出空心菱形