A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马的学员 中级黑马   /  2015-8-9 22:46  /  274 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

List、Set
List:特有的常见方法。
有一个共性特点就是都可以操作角标。
1、添加
void add(index,element);
void addAll(index,collection);
2、删除
Object remove(index);
3、修改
Object set(index,element);
4、获取:
Object get(index);
int indexOf(object);
int lastIndexOf(object);
List subList(from,to);
Vector、ArrayList、LinkedList
list下面又分3个子类
Vector:内部是数组数据结构,是同步的。增删,查询都很慢。
ArrayList:内部是数组数据结构,是不同步的,替代了Vector。替代了Vector,查询的速度快。
LinkedList:内部是链表数据结构,是不同步的。增删元素的速度很快
LinkedList
getFirst();//获取但不移除,如果链表为空,抛出NoSuchElementException。
getLast();
peekFirst();//获取但不移除,如果链表为空,返回null。
peekLast();
removeFirst();//获取并移除,如果链表为空,抛出NoSuchElementException。
removeLast();
pollFirst();//获取并移除,如果链表为空,返回null;
pollLast();
Hashset,Treeset
HashSet:内部数据结构是哈希表,是不同步的。
TreeSet:可以对Set集合中的元素进行排序,是不同步的。
哈希表确定元素是否相同
1. 判断的是两个元素的哈希值是否相同。如果相同,再判断两个对象的内容是否相同。
2. 判断哈希值相同,其实判断的是对象的HashCode方法。判断内容相同,用的是equals方法
TreeSet:
TreeSet对元素进行排序的方式一: 让元素自身具备比较功能,元素就需要实现Comparable接口,覆盖compareTo方法。
如果不要按照对象中具备的自然顺序进行排序。如果对象中不具备自然顺序。怎么办?
可以使用TreeSet集合第二种排序方式:
让集合自身具备比较功能,定义一个类实现Comparator接口,覆盖compare方法。
将该类对象作为参数传递给TreeSet集合的构造函数。

评分

参与人数 1黑马币 +2 收起 理由
耀阳圣尊 + 2

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马