A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Anyway 中级黑马   /  2014-8-10 15:25  /  1751 人查看  /  10 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 Anyway 于 2014-8-11 09:46 编辑
  1. import java.util.*;
  2. public class TreeSet
  3. {
  4.         public static void main(String[] args)
  5.         {
  6.                 TreeSet ts=new TreeSet();
  7.                 ts.add("shjks");
  8.                 ts.add("bcjka");
  9.                 ts.add("jsijk");
  10.         
  11.         Iterator it=ts.iterator();
  12.         while(ts.hasNext())
  13.         {
  14.                 System.out.println(it.next());
  15.         }
  16.     }        
  17. }
复制代码

点评

while(it.hasNext())  发表于 2014-8-10 15:27

10 个回复

倒序浏览
好像没看到什么错误,但是你的类名为何用TreeSet,不知道你报什么错误但是有可能是跟类名冲突了
回复 使用道具 举报
  while(ts.hasNext())变量写错了
回复 使用道具 举报
二处错误:
1,类名错误TreeSet改成其它,不然导入不了TreeSet
2, while(ts.hasNext())改成while(it.hasNext())
回复 使用道具 举报
TreeSet类名错了,不能用,还有就是while循环里的错了
回复 使用道具 举报
哥们这集合不是这么用的。1,不能用java关键字定义类名,2.判断是否有迭代元素是跌代器的方法。

treeset用于对Set集合进行元素的指定顺序排序,排序需要依据元素自身具备的比较性。
如果元素不具备比较性,在运行时会发生ClassCastException异常。
1:让元素自身具备比较性,需要元素对象实现Comparable接口,覆盖compareTo方法。
2:让集合自身具备比较性,需要定义一个实现了Comparator接口的比较器,并覆盖compare方法,并将该类对象作为实际参数传递给TreeSet集合的构造函数。

回复 使用道具 举报
while循环的条件错了!是it.hasNext()
回复 使用道具 举报
while循环里是 it
回复 使用道具 举报
类名错误,这样写会建立一个你这个类的一个对象,而不是一个TreeSet集合.
回复 使用道具 举报
问题解决,谢谢大家:)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马