[英]What is the basis of output order Hashset in Java
我正在嘗試打印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())
}
}
來自Java文檔
[Hashset]實現Set接口,由哈希表(實際上是HashMap實例)支持。 它不能保證集合的迭代順序; 特別是,它不保證訂單會隨着時間的推移保持不變。
將LinkedHashSet用於預期輸出。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.