首頁  >  文章  >  Java  >  Java 中的設定介面

Java 中的設定介面

WBOY
WBOY原創
2024-08-30 16:11:25502瀏覽

Java 提供了一個用於儲存和操作資料的接口,稱為集合接口。集合是 Set 接口的超級接口,有助於儲存任何類型的物件並對其進行操作。 Set 介面作為一個不允許重複資料的 Collection 脫穎而出,即如果 d1 和 d2 是同一個 Set 中的兩個資料條目,則 d1.equals(d2) 的結果應該為 false。 Set 中幾乎允許有一個空元素。集合對數學集合抽象進行建模。

開始您的免費軟體開發課程

網頁開發、程式語言、軟體測試及其他

集合的一些實作是 HashedSet、LinkedHashSet 或 TreeSet 作為排序表示。

用 Java 實作 Set 介面的範例

下面是Java中Set Interface的範例:

1.雜湊集

代碼:

import java.util.*;
public class Main{
public static void main(String[] args)
{
// Set demonstration using HashSet
Set<Integer > hash = new HashSet<Integer>();
hash.add(1);
hash.add(4);
hash.add(1);
hash.add(3);
hash.add(2);
System.out.print("Set output without duplicates");
System.out.println(hash);
}
}

輸出:

Java 中的設定介面

2.樹集

代碼:

import java.util.*;
public class Main{
public static void main(String[] args)
{
// Set demonstration using TreeSet
Set<Integer> tree = new TreeSet<Integer>();
tree.add(1);
tree.add(4);
tree.add(1);
tree.add(3);
tree.add(2);
System.out.print("Set output without duplicates and sorted data "); System.out.println(tree);
}
}

輸出:

Java 中的設定介面

Java中Set介面的方法

Set 支援的用於各種資料物件儲存和操作的方法。

  • add(Element e): 在集合中加入指定元素。
  • addAll(Collection> c): 新增指定集合中存在的所有元素。
  • clear():從集合中刪除所有元素。
  • contains(Object o):如果 Set 包含與指定物件相同的對象,則傳回 true。
  • containsAll(Collection> c): 如果 set 包含指定集合中的所有元素,則傳回 true。
  • size(): 傳回 Set 中元素的數量。
  • equals(Object o): 如果我們的物件等於指定的對象,則比較並傳回 true。
  • hashCode():它傳回集合的雜湊碼值。
  • isEmpty(): 如果集合不包含元素,則傳回 true。
  • iterator():它傳回集合上的迭代器,這有助於追蹤整個集合。
  • remove(Object o): 從現有集合中移除指定元素。
  • removeAll(Collection> c): 從現有集合中移除指定集合。
  • toArray(): 它傳回包含 Set 中所有元素的特定陣列。

我們程式碼中方法的使用:

代碼:

import java.util.LinkedHashSet;
public class Main
{
public static void main(String[] args)
{
LinkedHashSet<String> linked = new LinkedHashSet<String>();
// Adding element to LinkedHashSet
linked.add("Apple");
linked.add("Ball");
linked.add("Cat");
linked.add("Dog");
// Cannot add new element as Apple already exists
linked.add("Apple");
linked.add("Egg");
System.out.println("Size of LinkedHashSet: " + linked.size());
System.out.println("Old LinkedHashSet:" + linked);
System.out.println("Remove Dog from LinkedHashSet: " + linked.remove("Dog"));
System.out.println("Trying Remove Zoo which is not present "+ "present: " +        linked.remove("Zoo"));
System.out.println("Check if Apple is present=" + linked.contains("Apple"));
System.out.println("New LinkedHashSet: " + linked);
}
}

輸出:

Java 中的設定介面

將 HashSet 轉換為 TreeSet

HashSet一般用於尋找、刪除和插入操作。 HashSet 比 TreeSet 更快並且使用哈希表。 TreeSet 由於其排序資料儲存屬性而用於儲存目的。 TreeSet 在 Java 後端使用 TreeMap。為了儲存排序的數據,請將元素插入到哈希圖中,然後將數據插入到樹中以對其進行排序。

有 3 種方法可以做到這一點:

1.傳遞創建的HashSet

代碼:

import java.util.*;
public class Main
{
public static void main(String[] args)
{
Set<Integer > hash = new HashSet<Integer>();
hash.add(1);
hash.add(4);
hash.add(1);
hash.add(3);
hash.add(2);
System.out.print("HashSet");
System.out.println(hash);
//adding HashSet as a parameter to TreeSet constructor
Set< Integer> treeSet = new TreeSet<>(hash);
// Print TreeSet
System.out.println("TreeSet: " + treeSet);
}
}

輸出:

Java 中的設定介面

2。 使用 addAll() 方法

代碼:

import java.util.*;
public class Main
{
public static void main(String[] args)
{
Set<Integer > hash = new HashSet<Integer>();
hash.add(1);
hash.add(4);
hash.add(1);
hash.add(3);
hash.add(2);
System.out.print("HashSet");
System.out.println(hash);
//converting HashSet to TreeSet using addAll() method
Set<Integer> treeSet = new TreeSet<>();
treeSet.addAll(hash);
// Print TreeSet
System.out.println("TreeSet: " + treeSet);
}
}

輸出:

Java 中的設定介面

3.使用 for-each 迴圈

代碼:

import java.util.*;
public class Main
{
public static void main(String[] args)
{
Set<Integer > hash = new HashSet<Integer>();
hash.add(1);
hash.add(4);
hash.add(1);
hash.add(3);
hash.add(2);
System.out.print("HashSet");
System.out.println(hash);
//converting HashSet to TreeSet using for each loop
Set<Integer> treeSet = new TreeSet<>();
for (Integer i : hash)
{
treeSet.add(i);
}
// Print TreeSet
System.out.println("TreeSet: " + treeSet);
}
}

輸出:

Java 中的設定介面

推薦文章

這是 Java 中設定介面的指南。這裡我們討論Set介面的簡介以及它如何在Java中儲存和操作資料及其方法。您也可以瀏覽我們其他推薦的文章以了解更多資訊 –

  1. Java 中的版面配置
  2. Java 編譯器
  3. Java 並行流
  4. Java BufferedReader

以上是Java 中的設定介面的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn