显然,集合没有任何类型的排序,所以如果我这样做的话,我不能期望任何特定的排序
String[] string = mySet.toArray();
然而,我面临着一个用例,我不关心字符串数组的顺序,但我确实需要这样的情况:如果两个集合彼此相等,那么:
StringUtils.join(mySet.toArray(),',');
假设我坚持使用相同的代码,无论我运行程序多少次,都会为这些集合生成完全相同的字符串。
我有这个保证吗?
类似地,对于迭代器中给定 Set 的元素出现的顺序,这是否完全正确?
一般来说,您不能保证订单的顺序Set
正如您提到的,即使现在有效,将来也可能行不通。然而,你can保证a的顺序LinkedHashSet http://docs.oracle.com/javase/6/docs/api/java/util/LinkedHashSet.html所以你可以使用它。仅当集合以相同顺序插入元素时,这才有效。如果您没有这种情况,您可能只需对集合进行排序并打印即可。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)