List与set
1,List与set的区别?
List:元素是有序的,元素可以重复,因为集合体系有索引
set:元素是无序的,元素不可以重复,集合体系没有索引
2,list里面特有的方法:
在制定的位置添加元素add()
在制定位置添加一堆元素addAll()
通过索引获取get(index)
List al= new ArrayList();
al.add("name1");
al.add("name2");
al.add("name3");
for(int i=0;i<al.size();i++)
{
System.out.println(al.get(i));
}
获取元素的位置
System.out.println(al.indexOf("name2"));
subList()包含头不包含未
List al2=al.subList(1,3);
System.out.println(al2);
根据位置获取元素
listIterator
按照角标移除remove()
按角标设置set()
3,迭代器方法产生的并发访问问题:
list中操作元素的方法有两种:集合的方法,迭代器方法
迭代器在操作list时,再用集合的方法访问就是并发访问(同时访问),
所以说,对同一个集合同时进行两种操作是不被允许的
【个人理解(仅供参考):我是将list中看成有一个指针,一个list只有一个指针,这个指针被迭代器使用的时候,再用集合去操作它,就会破坏迭代器的原来的执行路径,从而导致得到与预想不到的结果。所以就规定了在迭代器对集合操作的时候不可以使用集合的方式在去操作list】
随机推荐
- POJ 2311 Cutting Game(SG函数)
Cutting Game Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 4806 Accepted: 1760 Desc ...
- JAVA后端常用框架SSM,redis,dubbo等
JAVA后端常用框架SSM,redis,dubbo等 一.SpringMVC http://blog.csdn.net/evankaka/article/details/45501811 spri ...
- leetcode 【 Unique Paths II 】 python 实现
题目: Follow up for "Unique Paths": Now consider if some obstacles are added to the grids. H ...
- IOS开发学习笔记032-UITableView 的编辑模式
UITableView 的三种编辑模式 1.删除 2.排序 3.添加 进入编辑模式,需要设置一个参数 - (IBAction)remove:(UIBarButtonItem *)sender { NS ...
- 关于eclipse连接mysql jar包
步骤如下: 右键工程--选择build path -- add Libraries. 弹出框选user library,点击next. 弹出框点击add libraries . 继续点击new ,输 ...
- [oldboy-django][2深入django]登录注册页面验证码
后台生成随机验证码 #验证码生成 - 在login.html 中有一张验证码图片 设置图片的src url, 相当于发送一次get请求,返回的内容为图片渲染的内容 <div class=&quo ...
- java中json依赖包
Exception in thread "main" java.lang.NoClassDefFoundError: org/jaxen/JaxenException 上面的是do ...
- AsyncSocket
如果需要在项目中像QQ微信一样做到即时通讯,必须使用socket通讯,本人也是刚学习,分享一下,有什么不对的地方希望大家指正 ios原生的socket用起来不是很直观,所以我用的是AsyncSocke ...
- P3078 [USACO13MAR]扑克牌型Poker Hands
题目描述 Bessie and her friends are playing a unique version of poker involving a deck with N (1 <= N ...
- tomcat 启动慢解决(/dev/random)
JRE默认使用 /dev/random作为随机数来源,当熵池大小不够的时候,random会很慢,造成随机数生成调用阻塞. 解决方案: 改用 /dev/urandom (1) tomcat的启动选项增加 ...