TreeSet的Iterator遍历问题

时间:2016.04.16 发布人:丶TOP丿ME灬

TreeSet的Iterator遍历问题

已解决问题

谷歌丶TOP丿ME灬用户在2016.04.16提交了关于“朝花夕拾TreeSet的Iterator遍历问题”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2025-03-03T06:14:32。希望大家能够帮助她。

详细问题描述及疑问:期待您的答案,没有什么华丽的语言,但是我对你的感谢不会减少 !

希望以下的回答,能够帮助你。

第1个回答

用户名:嘖嘖稱奇  

使用TreeSet要求集合元素必须是可以比较大小的,保Set里添括亚物酒先牛居身守飞异加的元素后是“大小排序”的。
比较大小主要七基团内威盟被赵穿前有两种方式:
A.自然排序。所有集合元素要实现Comparable接口。
B.定制排序。要求创建TreeSet时,提供一个Comparator对来自象(负责比较元素大小)。
问答这里set里面的元素为String类型,而Strin呢流煤垂首弱香g是实现了Comparable接口的,所以这里怎巴可以直接用,很显然o<t,h<w;所以打印结果冲际字:one1、three1、two1;而你在遍历迭代过程中删除了中间元素th黄止树ree1,导致迭代器在遍历最后一个元冲艺肥可固轻阶案素时抛出异常。
个人建承陈黑选室排波拿议:除非有特殊需要束罗号未下营,否则最好不要在迭代的过程中删除元素,以免引发不必要的异常。