List接口
来源:互联网 发布:巫师3上古卷轴5 知乎 编辑:程序博客网 时间:2024/06/03 12:31
List接口中最常用的实现类有:
ArrayList:底层实现是数组,线程不安全,效率高,查询效率高,修改,插入,删除效率低
LinkedList:底层实现是链表,线程不安全,效率高,查询效率低,修改,插入,删除效率高。
Vector:线程安全,效率低
ArrayList, LinkedList, Vector 实现类常用的方法
//在list对象中添加元素 list.add("sdffff"); //在list对象中给定位置添加元素 list.add(2,"qweq"); //在list对象中添加对象 list.addAll(list1); //在list对象中给定位置添加对象 list.addAll(2, list1); //清除list里面的元素 //list.clear(); //判断list中有没有包含"1234",有返回true,否则false list.contains("1234"); //判断list中包不包含list1中所有的元素,有返回true,否则false list.containsAll(list1); //判断list中的内容和list1中的内容一不一致,如果一致返回true,否则返回false list.equals(list1); //根据下标获取list中的元素 list.get(0); //获取list的哈希值 list.hashCode(); //判断第一个出现的元素是不是123,如果是返回true,否则false list.indexOf("123"); //判断list中是否有元素,有返回true,否则false list.isEmpty(); //遍历的迭代器 Iterator<String> iterator=list.iterator(); //hasNext()用来判断是否有下一页 while (iterator.hasNext()) { //next()用来判断是否有一下个元素 System.out.println(iterator.next()); } //判断list最后一次出现的元素是不是123,是返回true,否则false list.lastIndexOf("123"); //listIterator迭代器中有个倒序,前提是存在正序 ListIterator<String> lists=list.listIterator(); while (lists.hasNext()) { System.out.println(lists.next()); } System.out.println("倒序"); while (lists.hasPrevious()) { System.out.println(lists.previous()); }
两种迭代器的区别(Iterator和ListIterator)
http://blog.csdn.net/chensheng913/article/details/564320
//Iterator()不能指定从哪个地方开始遍历,而listIterator可以list.listIterator(1);//根据list对象中元素的下标来删除指定元素 list.remove(0); //根据list对象中元素的值来删除 list.remove("123"); //根据list对象来删除 list.removeAll(list); //根据list对象来删除指定位置的对象 list.retainAll(list1); //修改list对象指定位置的元素 list.set(2, "qqq"); //返回list对象元素的数目 list.size(); //截取list对象中根据下标来截取需要的元素(切记:第一个元素是大于等于,第二个元素是小于的) list.subList(0, 2); //把list对象的元素赋值给toArray(参数),参数是数组,意思就是把数组list的值给到参数。 list.toArray(); list.toArray(new Integer[list.size()]); //把list对象的元素以字符串的形式输出 list.toString(); //通知list对象中的元素可以运行了 list.notify(); //通知list对象可以运行了 list.notifyAll(); //通知list对象中的元素先等待 list.wait(); //notify(),wait()用在线程中
notify()和notifyAll()的区别
http://blog.csdn.net/zdw890412/article/details/7714443
如何选用?
线程安全用Vector.
线程不安全,查找较多用ArrayList,增加或删除元素较多用LinkedList.
阅读全文
0 0
- List 接口
- List接口
- List 接口
- List接口
- List接口
- List接口
- List接口
- List接口
- List接口
- list接口
- List 接口
- List接口
- List接口
- List接口
- List接口
- List接口
- List接口
- List接口
- 【剑指offer】面试题6:从头到尾打印链表
- 35入坑!努力中!Eclipse maven svn安装!
- hibernate_持久化类、主键生成策略
- 终极方案:DCloud技术与androidstudio打包
- js_day01_js实现1到100的和为5050
- List接口
- 纯css样式实现盒子 3D 旋转、鼠标悬停效果
- 状态栏通知网络链接的情况(wifi 2g/3g/4g/无网络链接状态)
- PHP如何解决网站大流量与高并发的问题
- android笔记--Service与AIDL
- There was a problem with the editor ‘vi’
- java 中的checked exception vs unchecked exception及异常处理或抛出原则
- 使用grep查看匹配行的前后n行信息
- 垃圾球浅谈Javascript(一)