黑马程序员技术交流社区
标题:
在编写ArrayList程序时遇到了 学长学姐帮忙解决下。谢谢了
[打印本页]
作者:
微笑=.一瞬间
时间:
2014-4-8 21:04
标题:
在编写ArrayList程序时遇到了 学长学姐帮忙解决下。谢谢了
程序需求:打印出ArrayList中不同的对象
程序代码如下:(为什么代码编译能通过,运行时会提示“找不到或无法加载主类”)
import java.util.*;
class TestArratLi
{
public static void main(String[] args)
{
ArrayList al=new ArrayList();
al.add("java1");
al.add("java2");
al.add("java3");
al.add("java4");
al.add("java1");
Iterator it=al.iterator();
while(it.hasNext())
{
ArrayList newAl=new ArrayList();
if(!newAl.contains(it.next()))
{
newAl.add(it.next());
System.out.println(it.next());
}
else
it.next();
}
}
}
作者:
微笑=.一瞬间
时间:
2014-4-8 21:07
classpath没设
作者:
lwy0319
时间:
2014-4-9 05:22
本帖最后由 lwy0319 于 2014-4-9 05:27 编辑
每一次执行it.next()都是迭代下一个元素的操作,你迭代的操作太多了。。感觉在这里else没什么意义。。不执行操作也会回到while循环的内容上来
import java.util.*;
class TestArratLi
{
public static void main(String[] args)
{
ArrayList al=new ArrayList();
al.add("java1");
al.add("java2");
al.add("java3");
al.add("java4");
al.add("java1");
ArrayList newAl=new ArrayList();
Iterator it=al.iterator();
while(it.hasNext())
{
Object temp=it.next();
if(!newAl.contains(temp))
{
newAl.add(temp);
System.out.println(temp);
}
}
}
}
复制代码
作者:
骑着毛驴去赶
时间:
2014-4-9 08:06
找到该类的class文件删除,重新编译试试
作者:
诺忔。初禾、
时间:
2014-4-9 12:50
用eclipse就不会出现这种现象
作者:
向阳泪无痕
时间:
2014-4-9 13:01
找不到或无法加载主类 首先CLASSPATH 设置了没 不然就是你的源文件路径是否正确,该类是否放在了包下了,如果放在了包下了,在编译时,带上包
作者:
向日葵的曙光
时间:
2014-4-9 13:26
类名要保证与你文件的名字保持一致,试试看是不是这个问题
作者:
vincentgood
时间:
2014-4-10 17:01
你的classpath怎么设置的,有可能没有设置对,我之前也出过这样的问题,你把下面这一行英文复制过去看下能不能用,java_home就是你自已设置 的,你可以看下基础视频里第一天的内容就明白了
;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2