黑马程序员_集合中List和Set
来源:互联网 发布:启用视频网络 编辑:程序博客网 时间:2024/04/30 23:24
———– android培训、 java培训
、java学习型技术博客、期待与您交流! ——-
Collection接口有两个子接口: List(列表),Set(集)
List:可存放重复元素,元素存取是有序的。 Set:不可以存放重复元素,元素存取是无序 的
List集合中常用的类
Vector:线程安全,但速度慢,已被 ArrayList 替代。ArrayList:线程不安全,查询速度快。LinkedList:链表结构,增删速度快。 取出LIst集合中元素的方式: get(int index)通过脚标获取元素。 iterator():通过迭代方法获取迭代器对象
集合框架-List集合的常见方法
public class Collection08_1 { public static void main(String[] args) { List list1=new ArrayList(); show(list1); } private static void show(List list) { //添加元素 list.add("abc1"); list.add("abc2"); list.add("abc3"); System.out.println(list); //插入元素 list.add(1,"abc9"); System.out.println(list); //修改元素 System.out.println("set:"+list.set(1,"abc7")); //返回被修改的元素 System.out.println(list); //获取子列表 System.out.println("sublist:"+list.subList(1, 2));//包含1,不包含2 System.out.println(list); }}
集合框架-ListIterator接口
public class Collection09_1 { public static void main(String[] args) { List list=new ArrayList(); // show(list); list.add("abc1"); list.add("abc2"); list.add("abc3"); ListIterator it=list.listIterator(); ////获取列表迭代器对象 //它可以实现在迭代过程中完成对元素的增删改查 //只有list集合具备该功能 while(it.hasNext()){ Object obj=it.next(); if(obj.equals("abc2")){ it.add("abc9"); }else{ System.out.println(list); } } System.out.println("previous:"+it.previous()); /* Iterator it=list.iterator(); while(it.hasNext()){ Object obj=it.next(); //java.util.ConcurrentModificationException if(obj.equals("abc2")){ list.add("abc9"); }else{ System.out.println("next:"+obj); } } System.out.println(list);//在迭代器过程中,不要使用集合操作元素,容易报异常//可以使用Iterator接口的子接口ListIterator来完成在迭代中对元素进行更多的操作*/ } private static void show(List list) { list.add("abc1"); list.add("abc2"); list.add("abc3"); list.add("abc4"); Iterator it=list.iterator(); while(it.hasNext()){ System.out.println("next:"+it.next()); } //list的特有取去方式元素的方式之一 for(int x=0;x<list.size();x++){ System.out.println("get:"+list.get(x)); } }}
Collection
|--List:有序(存入和取出的顺序一致),元素都有索引(角标),元素可以重复。 |--Set:元素不可以重复,无序。List:特有的常见方法:有一个共性特点就是都可以操作角标。1.添加 void add(index,element); void add(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);List集合是可以完成对元素的增删改查。List: |--Vector:内部是数据数据结构,是同步的。增删,查询都很慢 |--ArrayList:内部是数据数据结构,是不同步的。替代了Vector。查询的速度快。 |--LinkedList:内部是链表数据结构,是不同步的。增删元素的速度非常快。LinkedList: addFirst(); addLast(); jdk1.6 offerFirst(); offerLast(); getFirst();//获取但不移除,如果链表为空,抛出NoSuchElementException getLast(); jdk1.6 peekFirst;//获取但不移除,如果链表为空,返回null. removeLast(); jdk1.6 pollFirst();//获取并移除,如果链表为空,返回null. pooLast();
0 0
- 黑马程序员_集合中List和Set
- 黑马程序员—java基础_集合List和Set
- 黑马程序员_集合框架(List,Set)
- 黑马程序员_十一 【集合了解】【Set集合】【List集合】
- 黑马程序员-集合 List和Set
- 黑马程序员--集合(List和Set)
- 黑马程序员认识List和Set集合
- 黑马程序员_集合概述(Collection List&Set)
- 黑马程序员_java基础_集合(Collection和List、Set)
- 黑马程序员----List,Set集合
- 黑马程序员-----List,Set集合
- 黑马程序员------------List,Set集合
- 黑马程序员-----List,Set集合
- 黑马程序员-----List,Set集合
- 黑马程序员-----List,Set集合
- 黑马程序员___13java基础 集合框架 LIST和SET集合
- 黑马程序员java学习—集合框架List和Set
- 黑马程序员——集合类(list和set)(一)
- IOS学习日志(Controller)1.7
- 收藏的链接
- 利用ajax向控制器中传二维数组
- Java面试题集(1-50)
- Java面试题集(51-70)
- 黑马程序员_集合中List和Set
- 远程链接数据库中权限问题
- session与cookie技术应用(附详细代码示例以及注释)
- IT讲师韩顺平:我为什么辞去百万年薪,自己创业?
- 高效的删除数组中的空值
- 使用自定义视图的AlertDialog
- Android中去掉显示标题的方法
- 美团酒店Node全栈开发实践
- bzoj2697: 特技飞行