我正在尝试打印Hashset的内容。并将其输出为[D,E,F,A,B,C]。我期待它输出类似[F,E,D,B,A,C]的东西。这背后有逻辑吗?
public class TestSomething {
public static void main(String[] args) {
HashSet<String> hashSet = new HashSet<String>();
hashSet.add("F");
hashSet.add("E");
hashSet.add("D");
hashSet.add("B");
hashSet.add("A");
hashSet.add("C");
System.out.println(hashSet.toString())
}
}
答案 0 :(得分:3)
答案 1 :(得分:0)
[Hashset]实现了Set接口,由哈希表(实际上是HashMap实例)支持。它不能保证集合的迭代顺序;特别是,它不保证订单会随着时间的推移保持不变。
答案 2 :(得分:-1)
将LinkedHashSet用于预期输出。