Panduan TreeSet Kelas Java: Untuk Pemula

Pengenalan

Halo semua, pemrogram Java masa depan! Hari ini, kita akan memulai perjalanan yang menarik ke dunia Java TreeSets. Jangan khawatir jika Anda belum pernah menulis satu baris kode sebelumnya – saya akan menjadi pemandu ramah Anda, dan kita akan menjelajahi topik ini bersama langkah demi langkah.

Java - TreeSet

Bayangkan Anda sedang mengorganisir rak buku. Anda ingin menjaga buku-buku Anda dalam urutan tertentu, mungkin secara alfabetik berdasarkan judul. Itu adalah yang akan dilakukan TreeSet untuk data di Java – ia menjaga hal-hal terorganisir dan tersortir secara otomatis. Keren, bukan?

Deklarasi Kelas

Ayo kita mulai dengan dasar-dasar. Dalam Java, TreeSet diklarasikan seperti ini:

import java.util.TreeSet;

TreeSet<E> treeSet = new TreeSet<E>();

Di sini, 'E' adalah pengganti untuk jenis elemen yang Anda ingin simpan. itu bisa Integer, String, atau jenis objek lainnya. Misalnya:

TreeSet<String> bookTitles = new TreeSet<String>();

Ini membuat TreeSet yang akan menyimpan judul buku sebagai string.

Parameter

TreeSet tidak memiliki parameter sendiri, tetapi mengimplementasikan antarmuka NavigableSet, yang melanjutkan SortedSet. Ini berarti ia mengwarisi perilaku tertentu yang memungkinkan untuk navigasi dan pengurutan yang efisien.

Konstruktor Kelas

TreeSet datang dengan beberapa konstruktor. Mari kita lihat yang paling umum:

  1. Konstruktor default:

    TreeSet<String> set1 = new TreeSet<String>();

    Ini membuat TreeSet kosong yang akan mengurutkan elemen dalam urutan alami mereka.

  2. Konstruktor dengan Comparator:

    TreeSet<String> set2 = new TreeSet<String>(Comparator.reverseOrder());

    Ini membuat TreeSet yang akan mengurutkan elemen menggunakan Comparator yang ditentukan.

  3. Konstruktor dengan Koleksi:

    ArrayList<Integer> numbers = new ArrayList<Integer>();
    numbers.add(5);
    numbers.add(2);
    numbers.add(8);
    TreeSet<Integer> set3 = new TreeSet<Integer>(numbers);

    Ini membuat TreeSet yang berisi semua elemen dari Koleksi yang diberikan.

Metode Kelas

TreeSet menyediakan berbagai macam metode yang berguna. Berikut adalah tabel beberapa metode utama:

Metode Deskripsi
add(E element) Menambahkan elemen yang ditentukan ke set
clear() Menghapus semua elemen dari set
contains(Object o) Mengembalikan true jika set berisi elemen yang ditentukan
first() Mengembalikan elemen pertama (terendah) di set
last() Mengembalikan elemen terakhir (tertinggi) di set
remove(Object o) Menghapus elemen yang ditentukan dari set
size() Mengembalikan jumlah elemen di set

Metode Yang Diwarisi

TreeSet mengwarisi metode dari beberapa antarmuka dan kelas, termasuk AbstractSet, NavigableSet, dan SortedSet. Ini memberikan kemampuan kaya untuk bekerja dengan data yang tersortir.

Contoh Menambahkan Entri ke TreeSet

Ayo kita gabungkan pengetahuan kita dengan contoh yang menyenangkan. Kita akan membuat TreeSet untuk mengorganisir daftar superhero menurut tingkat kekuatan mereka:

import java.util.TreeSet;

public class SuperheroPowerRanking {
public static void main(String[] args) {
TreeSet<String> heroes = new TreeSet<String>();

// Menambahkan superhero ke TreeSet kita
heroes.add("Superman: 100");
heroes.add("Batman: 90");
heroes.add("Wonder Woman: 95");
heroes.add("Flash: 85");
heroes.add("Aquaman: 80");

System.out.println("Superhero yang diurutkan berdasarkan kekuatan:");
for (String hero : heroes) {
System.out.println(hero);
}

System.out.println("\nSuperhero terkuat: " + heroes.last());
System.out.println("Superhero terlemah: " + heroes.first());
}
}

Output

Ketika kita menjalankan kode ini, ini adalah yang kita dapatkan:

Superhero yang diurutkan berdasarkan kekuatan:
Aquaman: 80
Batman: 90
Flash: 85
Superman: 100
Wonder Woman: 95

Superhero terkuat: Wonder Woman: 95
Superhero terlemah: Aquaman: 80

Ayo kita uraikan apa yang terjadi di sini:

  1. Kita membuat TreeSet bernama 'heroes' untuk menyimpan peringkat kekuatan superhero kita.
  2. Kita menambahkan superhero ke set menggunakan metode add().
  3. TreeSet secara otomatis mengurutkan entri secara alfabetik (karena kita menggunakan String).
  4. Kita menggunakan pengulangan for-each untuk mencetak semua superhero dalam urutan yang diurutkan.
  5. Kita menggunakan last() untuk mendapatkan superhero terakhir (secara alfabetis), dan first() untuk mendapatkan superhero pertama.

Perhatikan bagaimana superhero diurutkan secara alfabetis berdasarkan nama mereka, bukan tingkat kekuatan. Jika kita ingin mengurutkan berdasarkan tingkat kekuatan, kita perlu menggunakan Comparator khusus – tapi itu adalah pelajaran untuk hari lain!

Dalam kesimpulan, TreeSet adalah alat yang kuat untuk menjaga data tersortir di Java. Apakah Anda menarik superhero, mengorganisir koleksi buku, atau mengelola jenis data lainnya yang perlu tetap dalam urutan, TreeSet memiliki punggung Anda.

Ingat, praktek membuat perfect. Cobalah untuk membuat TreeSet Anda sendiri dengan jenis data yang berbeda. Mungkin menarik film favorit Anda, atau mengurutkan daftar tanggal lahir teman Anda. Semakin banyak Anda bermain dengan itu, semakin nyaman Anda akan menjadi. Happy coding, pemimpin Java masa depan!

Credits: Image by storyset