| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 712 人关注过本帖
标题:[求助]遍历容器内容为什么出现死循环?
只看楼主 加入收藏
jdk2006
Rank: 1
等 级:新手上路
帖 子:244
专家分:0
注 册:2007-5-12
收藏
 问题点数:0 回复次数:4 
[求助]遍历容器内容为什么出现死循环?

import java.util.*;

public class Demo{
private LinkedList Linkedlist=new LinkedList();
public void Insert(int points,Object obj){
if(points==0) Linkedlist.addFirst(obj);
else Linkedlist.add(points,obj);
}
public void Remove(int points){
Linkedlist.remove(points);
}
public void Search(Object obj){
if(Linkedlist.contains(obj)){
System.out.println();
System.out.println("你查找的对象位置为:");
System.out.println((Linkedlist.indexOf(obj)+1));}
else System.out.println("你查找的对象不存在!");
}
public void ShowList(){
List list=Linkedlist;
ListIterator iterator=list.listIterator();
for(int index=0;index<5;index++)
while(iterator.hasNext()){
int index=iterator.nextIndex();
System.out.print(Linkedlist.get(index)+" ");
}
}
public static void main(String[] args){
Integer in=new Integer(10);
Integer in1=new Integer(100);
Integer in2=new Integer(20);
Integer in3=new Integer(200);
Integer in4=new Integer(300);
Demo list=new Demo();
list.Insert(0,in);
list.Insert(1,in1);
list.Insert(2,in2);
list.Insert(3,in3);
list.Insert(4,in4);
list.ShowList();
Integer in5=new Integer(600);
list.Insert(3,in5);
list.Remove(1);
list.Search(in3);
list.ShowList();
}

}

搜索更多相关主题的帖子: 遍历 容器 
2007-07-05 13:35
食恶不色
Rank: 2
等 级:新手上路
威 望:3
帖 子:632
专家分:5
注 册:2006-11-8
收藏
得分:0 
for(int index=0;index<5;index++)
while(iterator.hasNext()){
int index=iterator.nextIndex();
這里怎么一樣。。

做人要厚道,看帖要回帖!回帖是尊重,回帖是美德! 美德要发扬,我们要顶帖!顶帖是好事,千万莫灌水!
2007-07-05 15:25
神vLinux飘飘x
Rank: 2
等 级:新手上路
威 望:3
帖 子:436
专家分:0
注 册:2007-1-4
收藏
得分:0 
public void ShowList(){
List list=Linkedlist;
ListIterator iterator=list.listIterator();
for(int index=0;index<5;index++)
while(iterator.hasNext()){
int index=iterator.nextIndex();
System.out.print(Linkedlist.get(index)+" ");
}
}

找到你这个方法

iterator.nextIndex()是没有让递归继续往下的作用的,所以一直阻塞在那里,并不是死循环

修改为

public void ShowList(){
List list=Linkedlist;
ListIterator iterator=list.listIterator();
//for(int index=0;index<5;index++)
while(iterator.hasNext()){
System.out.print( iterator.next() );
//int index=iterator.nextIndex();
//System.out.print(Linkedlist.get(index)+" ");
}
}

[此贴子已经被作者于2007-7-5 16:06:22编辑过]

2007-07-05 16:05
食恶不色
Rank: 2
等 级:新手上路
威 望:3
帖 子:632
专家分:5
注 册:2006-11-8
收藏
得分:0 
LS的比我還注意。。下次我也要注意點了。。
不然幫助不了別人。。

做人要厚道,看帖要回帖!回帖是尊重,回帖是美德! 美德要发扬,我们要顶帖!顶帖是好事,千万莫灌水!
2007-07-05 17:17
jdk2006
Rank: 1
等 级:新手上路
帖 子:244
专家分:0
注 册:2007-5-12
收藏
得分:0 

谢谢各位大虾,小弟收到了.


2007-07-05 18:32
快速回复:[求助]遍历容器内容为什么出现死循环?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014949 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved