-------android培训、java培训、期待与您交流! --------
List里面的最常用实现子类之一ArrayList上一篇已经说的差不多了 在List实现子类中还有一个LinkedList它的数据结构是链表
1、LinkedList:
特有方法:
1、增加:addFirst()
addLast()//JDk1.6之后出现了替代方法
Boolean offerFirst()
Boolean offerLast()
实现代码:
Public static void main(String[] args){
LinkedLis link=new LinkedList();
Link.addFirst("abc1");
Link.addFirst("abc2");
Link.addFirst("abc3");
Link.addFirst("abc4");
While(!link.isEmpty()){//此方法可以按照顺序取出元素,但是需要被删除
Sop(link.removeLast());//abc1、abc2、abc3、abc4
}
}
模仿队列的一个小程序
Public static void main(String[] args){
DuiLie d=new DuiLie();
d.myAdd("abc1");
d.myAdd("abc2");
d.myAdd("abc3");
While(!d.isNull()){//判断是否有元素
Sop(d.myGet());
}
}
Class DuiLie
{
Private LinkedList link;
DuiLie(){
Link=new LinkedList();
}
提供添加元素的方法
Public void myAdd(Object obj)
{
link.addFirst(obj);//这里修改为link.addLast()就是堆栈
}
//提供获取元素的方法
Public Object myGet(){
Return link.removeLast();
}
判断集合中是否有内容
Public boolean isNull(){
Return link.isEmpty();
}
}
2、获取:Object getFirst()获取对象,不删除,如果集合中没有元素会抛出NoSuchElementException;
Object getLast();
它是出现在JDK1.6后
Object peekFirst()
Object peeklast()
3、获取对象:
Object removeFirst()获取到元素,但是删除了。
Object removeLast();
Object pollFirst()
Object pollLasr()
2、Set集合:无序、不重复、该接口中的方法和Collection接口中的方法一致。
|--HashSet:低层哈希表数据结构,不同步的,它保证元素唯一性的方式:
根据元素的两个方法来完成的,一个是hashCode、一个equals。只有当hashCode方法算出的哈希值相同时,会再次判断两个元素的equals方法是否为ture;
如果是true说明两个元素相同,不存储,所以往hashSet集合中存储自定义对象时,要覆盖hashCode、equals方法,通过自定义独享具备的特有数据来定义hashCode、equals的具体实现。
1、LinkedList:
特有方法:
1、增加:addFirst()
addLast()
JDk1.6之后出现了替代方法
Boolean offerFirst()
Boolean offerLast()
提供添加元素的方法
Public void myAdd(Object obj)
{
link.addFirst(obj);//这里修改为link.addLast()就是堆栈
}
提供获取元素的方法
Public Object myGet(){
Return link.removeLast();
}
判断集合中是否有内容
Public boolean isNull(){
Return link.isEmpty();
}
}
2、获取:Object getFirst()获取对象,不删除,如果集合中没有元素会抛出NoSuchElementException;
Object getLast();
JDK1.6后
Object peekFirst()
Object peeklast()
3、获取对象:
Object removeFirst()获取到元素,但是删除了。
Object removeLast();
Object pollFirst()
Object pollLasr()
2、Set集合:无序、不重复、该接口中的方法和Collection接口中的方法一致。
|--HashSet:低层哈希表数据结构,不同步的,它保证元素唯一性的方式:
根据元素的两个方法来完成的,一个是hashCode、一个equals。只有当hashCode方法算出的哈希值相同时,会再次判断两个元素的equals方法是否为ture;
如果是true说明两个元素相同,不存储,所以往hashSet集合中存储自定义对象时,要覆盖hashCode、equals方法,通过自定义独享具备的特有数据来定义hashCode、equals的具体实现。
------- android培训、 java培训、期待与您交流! --------