list遍历,list遍历修改数据
怎么实现高效的遍历list
* 3、最后遍历map,取出value为1的元素,添加到no_list代码如下: 1publicclass Main { 2 3/** 4 * @param args 5*/ 6publicstaticvoid main(String[] args) { 7 List list1=new ArrayList(); 8 List list2=new ArrayList(); 910for(int i=0;ilist2.size()){33 max_list=list1;34 min_list=list2;35 }3637/**38 * 再进行2个list遍历时,优先遍历size最长的list,提高性能39*/40for(int i=0;i){41 map.put(max_list.get(i), 1);42 }4344for(int i=0;i){45 String key_str=min_list.get(i);46 Integer count=map.get(key_str);47if(count!=null){48 map.put(key_str, count++);49continue;50 }51/**52 * 这步很重要,在遍历第2个list时,由于第1个list已经遍历完毕,故在count为null时53 * 说明该元素为2个list的不同元素,可直接添加到no_list,大大提高性能54*/55 no_list.add(key_str);56 }5758for(Map.Entry entry:map.entrySet()){59if(entry.getValue()==1){60 no_list.add(entry.getKey());61 }62 }6364long end=System.currentTimeMillis();65 System.out.println("总共用时:"+(end-begin)+"毫秒");66//总共用时:56毫秒67return no_list;68 }6970 }

java中list的遍历有几种方式
第一种:
for(IteratorString it = list.iterator(); it.hasNext(); ) {
....
}
这种方式在循环执行过程中会进行数据锁定, 性能稍差, 同时,如果你想在寻欢过程中去掉某个元素,只能调用it.remove方法, 不能使用list.remove方法, 否则一定出现并发访问的错误.
第二种:
for(String data : list) {
.....
}
内部调用第一种, 换汤不换药, 因此比Iterator 慢,这种循环方式还有其他限制。
第三种:
for(int i=0; ilist.size(); i++) {
A a = list.get(i);
...
}
内部不锁定, 效率最高, 但是当写多线程时要考虑并发操作的问题。
如何遍历list中对象的数据?
首先要知道往List里面添加数据的对象类型,假设为Project类型
这样写
Project myproject = 你要判断的数据;
bool listHasMyproject = false;
foreach(var item in list.Items)
{
Project proj = (Project)item;
if(proj.equals(myProject))//判断是不是等于你的数据,需要重写equals方法,当然你也可以跟据名字判断(如果名字不会重复的话)
{
listHasMyproject = true;
}
}
if(listHasMyporject){.......}//List列表中存在你的数据
else{.....}
遍历list的几种方式
1最基础的遍历方式:for循环,指定下标长度,使用List集合的size()方法,进行for循环遍历,2 较为简洁的遍历方式:使用foreach遍历List,但不能对某一个元素进行操作(这种方法在遍历数组和Map集合的时候同样适用,3适用迭代器Iterator遍历:直接根据List集合的自动遍历
java中怎么遍历list集合
常用的List集合, 可以使用下面几种方式进行遍历
参考代码
import?java.util.ArrayList;
import?java.util.Iterator;
public?class?Test?{
public?static?void?main(String[]?args)?{
ArrayListInteger?list?=?new?ArrayListInteger();
list.add(5);
list.add(8);
list.add(9);
//方案一?推荐?.简洁
for?(Integer?e?:?list)?{
System.out.print(e?+?",");
}
//方案二
for?(int?i?=?0;?i??list.size();?i++)?{
System.out.println(list.get(i));
}
//方案三
IteratorInteger?it?=?list.iterator();
while?(it.hasNext())?{
System.out.println(it.next());
}
}
}
java中遍历List的几种方法
???ListString?list?=?new?ArrayListString();
????????list.add("luojiahui");
????????list.add("luojiafeng");
????????//方法1
????????Iterator?it1?=?list.iterator();
????????while(it1.hasNext()){
????????????System.out.println(it1.next());
????????}
????????//方法2
????????for(Iterator?it2?=?list.iterator();it2.hasNext();){
?????????????System.out.println(it2.next());
????????}
????????//方法3
????????for(String?tmp:list){
????????????System.out.println(tmp);
????????}
????????//方法4
????????for(int?i?=?0;i??list.size();?i?++){
????????????System.out.println(list.get(i));
????????}