为了账号安全,请及时绑定邮箱和手机立即绑定

set集合怎么是顺序输出?

在做最后的纸牌联系的时候,试了好几次,读出来的都是有序的

正在回答

14 回答

右键项目选择properties,java compiler选择1.5的动态编译方式。你才能看到老师的这个现象。实际上这个是jdk的一个BUG,被老师用来讲普通原理了。如果你用1.8编译是不存在这个问题的,可见这个老师基础课讲的不是很好。

0 回复 有任何疑惑可以回复我~

for(Course cr:st.coursesToSelect)

0 回复 有任何疑惑可以回复我~

如果遍历的集合里面的数太少的话,就会顺序输出,如果你输出7到8个左右的数,就会是无序的了,总而言之,集合里面的数太少的话,输出的时候,就看不出是否是无序还是有序输出。

0 回复 有任何疑惑可以回复我~

如果遍历的集合里面的数太少的话,就会顺序输出,如果你输出7到8个左右的数,就会是无序的了,总而言之,集合里面的数太少的话,输出的时候,就看不出是否是无序还是有序输出。

0 回复 有任何疑惑可以回复我~

我的也是一个顺序出的,求解

0 回复 有任何疑惑可以回复我~

我的也是这样。。改成5个之后老是按照一个顺序输出。

0 回复 有任何疑惑可以回复我~

楼上说得对

1 回复 有任何疑惑可以回复我~

前面有个网友自问自答了,将for循环选课的次数增加到5次,就可以看出是无序的循环了。

结合网友的评论,可能是jdk更新后有所改动,3次太少了。

for (int i =0 ;i<5;i++){
			System.out.println("请输入课程ID");
			String conseld = console.next();
			for (Course cr : st.coursesToselect){
				if(cr.id.equals(conseld)){
					student.courses.add(cr);
				}
			}
		}


1 回复 有任何疑惑可以回复我~

你把代码贴一下看看,不会输出的是设置为List的Course当中的备选课程去了吧,你确认输出的是student当中的吗

0 回复 有任何疑惑可以回复我~
#1

爱土豆 提问者

不会的,我是直接将Poker对象直接存储到set集合中去的,输出的时候顺序总是一定的
2016-07-28 回复 有任何疑惑可以回复我~

是不是我的方法有错误?我是通过iterator去迭代set集合,但是执行的几次结果都是同一顺序输出的,我又add了4个int型数字,再获取还是一样的有序输出

0 回复 有任何疑惑可以回复我~
首页上一页12下一页尾页

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409779    人
  • 解答问题       4339    个

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

进入课程

set集合怎么是顺序输出?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信