Apa itu Vector di Java dan bagaimana kami menggunakannya?



Blog tentang 'Vektor di Java' ini akan membantu Anda memahami perbedaan kelas vektor dari ArrayList dan membantu Anda mempelajari berbagai metode yang terlibat.

Vektor dalam adalah salah satu struktur data yang paling umum digunakan di dunia pemrograman.Kita semua tahu itu Array adalah struktur data yang menyimpan data secara linier. Vektor juga menyimpan data secara linier, tetapi tidak seperti Array, vektor tidak memiliki ukuran tetap. Sebaliknya, ukurannya dapat ditingkatkan sesuai permintaan.

Kelas vektor adalah kelas anak dari AbstrakList kelas dan mengimplementasikan pada Daftar .Untuk menggunakan Vektor, pertama-tama kita harus mengimpor kelas Vektor dari paket java.util:





import java.util.Vector

Pada artikel ini, kita akan membahas konsep vektor berikut:



Ayo mulai!

Keuntungan s of Vector di Jawa

  • Properti memiliki ukuran dinamis sangat berguna karena menghindari pemborosan memori jika kita tidak mengetahui ukuran struktur data pada saat deklarasi.
  • Saat kita ingin mengubah ukuran struktur data kita di tengah program, vektor terbukti sangat berguna.

Properti memiliki ukuran dinamis tidak unik untuk Vektor di Jawa. Struktur data lain, yang dikenal sebagai ArrayList juga menunjukkan properti memiliki ukuran dinamis. Namun, Vektor berbeda dari ArrayLists karena beberapa alasan:

  • Pertama, Vektor disinkronkan yang memberikan keuntungan lebih jika dibandingkan dengan program karena ada risiko korupsi data.
  • Kedua, Vektor memiliki beberapa fungsi lama yang hanya dapat diimplementasikan pada vektor dan bukan pada ArrayLists.

Bagaimana Mengakses Elemen dalam Vektor

Kita dapat mengakses anggota data hanya dengan menggunakan indeks elemen, seperti halnya kita mengakses elemen dalam Array.



Contoh- Jika kita ingin mengakses elemen ketiga dalam vektor v, kita cukup menyebutnya sebagai v [3].

Vektor Konstruktor

Di bawah ini adalah beberapa variasi vektor konstruktor Tersedia untuk digunakan:

  1. Vektor (int initialCapacity, int Increment) - Membangun vektor dengan initialCapacity yang diberikan dan Increment-nya dalam ukuran.
  2. Vektor (int initialCapacity) - Membangun vektor kosong dengan initialCapacity yang diberikan. Dalam kasus ini, Increment adalah nol.
  3. Vektor () - Membuat vektor default dengan kapasitas 10.
  4. Vektor (Koleksi c) - Membuat vektor dengan koleksi tertentu, urutan elemennya sama seperti yang dikembalikan oleh iterator koleksi.

Ada juga tiga parameter yang dilindungi dalam vektor

  1. Int capacityIncrement () - Ini secara otomatis meningkatkan kapasitas vektor ketika ukurannya menjadi lebih besar dari kapasitas.
  2. Int elementCount () - beri tahu jumlah elemen dalam vektor
  3. Objek [] elementData () - array di mana elemen vektor disimpan

Kesalahan Paling Umum dalam Deklarasi Vektor

  • Vektor melempar IllegalArgumentException jika InitialSize dari vektor yang ditentukan adalah negatif.
  • Jika koleksi yang ditentukan adalah null, Itu melempar NullPointerException

catatan:

  1. Jika kenaikan vektor tidak ditentukan maka kapasitasnya akan menjadidua kali lipat di setiap siklus kenaikan.
  2. Kapasitas vektor tidak boleh di bawah ukuran, mungkin sama dengan itu.

Mari kita pertimbangkan contoh inisialisasi Vectors Constructors.

Contoh: Menginisialisasi Konstruktor Vektor

/ Kode Java yang mengilustrasikan Konstruktor Vektor import java.util. * Public class Main {public static void main (String [] args) {// buat vektor default Vektor v1 = new Vector () // buat vektor dengan ukuran yang ditentukan Vektor v2 = new Vector (20) // membuat vektor dengan Size dan Increment Vector v3 = new Vector (30,10) v2.add (100) v2.add (100) v2.add (100) // membuat vektor dengan diberikan kumpulan Vektor v4 = Vektor baru (v2) System.out.println ('Vektor v1 kapasitas' + v1.capacity ()) System.out.println ('Vektor v2 kapasitas' + v2.capacity ()) System.out .println ('Vektor v3 kapasitas' + v3.capacity ()) System.out.println ('Vektor v4 kapasitas' + v4.capacity ())}

Keluaran

Pembangun - Vektor di Jawa - Edureka

Alokasi memori vektor

Selama ini, Anda pasti sudah memahami bahwa Vektor tidak memiliki ukuran tetap, melainkan memiliki kemampuan untuk mengubah ukurannya secara dinamis. Orang mungkin berpikir bahwa vektor mengalokasikan ruang panjang tak terbatas untuk menyimpan objek. Tapi bukan ini masalahnya. Vektor dapat mengubah ukurannya berdasarkan dua bidang yaitu 'capacity' dan 'capacityIncrement'. Awalnya, ukuran yang sama dengan bidang 'kapasitas' dialokasikan saat vektor dideklarasikan. Kita dapat memasukkan elemen yang sesuai dengan kapasitasnya. Tapi segera setelah elemen berikutnya dimasukkan, itu meningkatkan ukuran array dengan ukuran 'capacityIncrement'. Oleh karena itu, ia mampu mengubah ukurannya secara dinamis.

Untuk sebuah konstruktor default , kapasitas menjadi dua kali lipat setiap kali kapasitas penuh dan elemen baru akan dimasukkan.

Contoh - Misalkan kita memiliki vektor InitialCapacity 5 dan capacityIncrement 2. Jadi ukuran awal dari vektor tersebut adalah 5 elemen. Kami memasukkan 5 elemen ke dalam vektor ini satu per satu yaitu 1,2,3,4,5. Ketika kita mencoba memasukkan elemen lain ke dalam vektor yaitu 6, ukuran vektor akan bertambah 2. Oleh karena itu ukuran vektor sekarang adalah 7. Jadi vektor dengan mudah menyesuaikan ukurannya sesuai no. elemen.

Hal menarik lainnya adalah tidak seperti array, vektor tidak berisi objek nyata, tetapi hanya referensi ke objek. Oleh karena itu, memungkinkan objek dari tipe data yang berbeda untuk disimpan dalam vektor yang sama.

Metode dalam Vector

Mari kita lihat beberapa metode vektor yang sangat sering digunakan.

  • Boolean add (Objek o) - Ini menambahkan elemen di akhir vektor.
// Kode Java menunjukkan metode boolean add () import java.util. * Public class Main {public static void main (String [] args) {Vector v = new Vector () // Membuat vektor default v.add (1 ) // Menambahkan 1 di akhir daftar v.add ('Java') // Menambahkan 'Java' di akhir daftar v.add ('is') // Menambahkan 'is' di akhir daftar list v.add ('Fun') // Menambahkan 'Fun' di akhir daftar System.out.println ('Vektornya adalah' + v)}}

Keluaran

  • Batal tambahkan (Indeks int, elemen E) - Ia menambahkan elemen yang diberikan pada indeks yang ditentukan dalam vektor
// Kode Java menunjukkan metode void add () import java.util. * Public class Main {public static void main (String [] args) {Vector v = new Vector () // Membuat vektor default v.add (0 , 1) // Menambahkan 1 pada indeks 0 v.add (1, 'Java') // Menambahkan 'Java' pada indeks 1 v.add (2, 'is') // Menambahkan 'is' pada indeks 2 v.add (3, 'Fun') // Menambahkan 'Fun' pada indeks 3 v.add (4, '!!!') // Menambahkan 'Fun' pada indeks 4 System.out.println (' Vektornya adalah '+ v)}}

Keluaran

  • Hapus Boolean (objek o) - Ini menghapus elemen pada indeks yang diberikan dalam vektor
// Kode Java menunjukkan metode boolean remove () import java.util. * Public class Main {public static void main (String [] args) {Vector v = new Vector () // Ini membuat vektor default v.add (1 ) // Menambahkan 1 di akhir daftar v.add ('Java') // Menambahkan 'Java' di akhir daftar v.add ('is') // Menambahkan 'is' di akhir daftar list v.add ('Fun') // Menambahkan 'Fun' di akhir daftar System.out.println ('Vector before removal' + v) v.remove (1) System.out.println ('Vector after penghapusan '+ v)}}

Keluaran

  • Penghapusan Boolean ( Object obj) - Ini menghapus elemen dengan namanya obj (bukan dengan nomor indeks)
// Kode Java menunjukkan metode removeElement () import java.util. * Public class Main {public static void main (String [] args) {Vector v = new Vector () // Ini membuat vektor default v.add (1) // Menambahkan 1 di akhir daftar v.add ('Java') // Menambahkan 'Java' di akhir daftar v.add ('is') // Menambahkan 'is' di akhir daftar v.add ('Fun') // Menambahkan 'Fun' di akhir daftar System.out.println ('Vector before removal' + v) v.removeElement ('Java') System.out.println ('Vector setelah penghapusan '+ v)}}

Keluaran

  • Ukuran int () - Ini mengembalikan ukuran vektor.
// Kode Java menunjukkan metode size () import java.util. * Public class Main {public static void main (String [] args) {Vector v = new Vector () // Ini membuat vektor default v.add (0, 1) // Menambahkan 1 pada indeks 0 v.add (1, 'Java') // Menambahkan 'Java' pada indeks 1 v.add (2, 'is') // Menambahkan 'is' pada indeks 2 v.add (3, 'Fun') // Menambahkan 'Fun' pada indeks 3 System.out.println ('Ukuran vektor adalah' + v.size ())}}

Keluaran

  • Kapasitas Int () - Ini mengembalikan kapasitas vektor
// Kode Java menunjukkan metode capacity () import java.util. * Public class Main {public static void main (String [] args) {Vector v = new Vector () // Ini membuat vektor default v.add (0, 1) // Menambahkan 1 pada indeks 0 v.add (1, 'Java') // Menambahkan 'Java' pada indeks 1 v.add (2, 'is') // Menambahkan 'is' pada indeks 2 v.add (3, 'Fun') // Menambahkan 'Fun' pada indeks 3 System.out.println ('Kapasitas vektor adalah' + v.capacity ())}}

Keluaran

  • Objek get (int index) - Ia mengembalikan elemen pada posisi tertentu dalam vektor
// Kode Java menunjukkan metode get () import java.util. * Public class Main {public static void main (String [] args) {Vector v = new Vector () // Membuat vektor default v.add (1) // Menambahkan 1 di akhir daftar v.add ('Java') // Menambahkan 'Java' di akhir daftar v.add ('is') // Menambahkan 'is' di akhir daftar v.add ('Fun') // Menambahkan 'Fun' di akhir daftar System.out.println ('Elemen pada indeks 1 adalah' + v.get (1))}}

Keluaran

  • Objek firstElement () - Ini mengembalikan elemen pertama
// Kode Java menunjukkan metode firstElement () import java.util. * Public class Main {public static void main (String [] args) {Vector v = new Vector () // Ini membuat vektor default v.add (1) // Menambahkan 1 di akhir daftar v.add ('Java') // Menambahkan 'Java' di akhir daftar v.add ('is') // Menambahkan 'is' di akhir daftar v.add ('Fun') // Menambahkan 'Fun' di akhir daftar System.out.println ('Elemen pertama adalah' + v.firstElement ())}}

Keluaran

  • Objek lastElement () - Ini mengembalikan elemen terakhir
// Kode Java menunjukkan metode lastElement () import java.util. * Public class Main {public static void main (String [] args) {Vector v = new Vector () // Membuat vektor default v.add (1) // Menambahkan 1 di akhir daftar v.add ('Java') // Menambahkan 'Java' di akhir daftar v.add ('is') // Menambahkan 'is' di akhir daftar v.add ('Fun') // Menambahkan 'Fun' di akhir daftar System.out.println ('Elemen terakhir adalah' + v.lastElement ())}}

Keluaran

menggabungkan larik urutkan c ++
  • Boolean sama dengan (Objek o) - Ini membandingkan vektor dengan objek yang ditentukan untuk persamaan. Ini mengembalikan nilai true jika semua elemen benar pada indeks yang sesuai
// Kode Java yang menunjukkan boolean equals () metode import java.util. * Public class Main {public static void main (String [] args) {Vector v = new Vector () // Membuat vektor default Vektor vcopy = new Vector () v.add (1) // Menambahkan 1 di akhir daftar v.add ('Java') // Menambahkan 'Java' di akhir daftar v.add ('is') // Adds ' adalah 'di akhir daftar v.add (' Fun ') // Menambahkan' Fun 'di akhir daftar vcopy.add (0,1) // Menambahkan 1 pada indeks 0 vcopy.add (1, 'Java') // Menambahkan 'Java' pada indeks 1 vcopy.add (2, 'is') // Menambahkan 'is' pada indeks 2 vcopy.add (3, 'Fun') // Menambahkan 'Fun' di indeks 3 vcopy.add (4, '!!!') // Tambahkan 'Kesenangan' pada indeks 4 if (v.equals (vcopy)) System.out.println ('Kedua vektor sama') else Sistem .out.println ('Vektor tidak sama')}}

Keluaran

  • Batal trimtosize () - Metode ini menghilangkan kapasitas ekstra dan menjaga kapasitas hanya untuk menahan elemen yaitu sama dengan ukurannya
// Kode Java yang menampilkan metode trimToSize () import java.util. * Public class Main {public static void main (String [] args) {Vector v = new Vector () // Ini membuat vektor default v.add (0, 1) // Menambahkan 1 pada indeks 0 v.add (1, 'Java') // Menambahkan 'Java' pada indeks 1 v.add (2, 'is') // Menambahkan 'is' pada indeks 2 v.add (3, 'Fun') // Menambahkan 'Fun' pada indeks 3 System.out.println ('Kapasitas vektor adalah' + v.capacity ()) v.trimToSize () System.out.println ( 'Kapasitas vektor adalah' + v.capacity ())}}

Keluaran


Metode Penting Lainnya

Sekarang Anda pasti sudah mendapat ide bagus tentang bagaimana bekerja dengan vektor. Jika Anda ingin menjelajahi lebih banyak metode vektor, lihat tabel yang diberikan di bawah ini.

Nama Metode Fungsi Metode

Boolean isEmpty ()

memeriksa apakah elemen ada atau tidak

Boolean berisi (Objek o)

digunakan untuk memeriksa keberadaan elemen tertentu, katakanlah o

int indexOf (Objek o)

Ini mengembalikan indeks elemen o

void removeRange (int s, int e)

menghapus elemen dari vektor mulai dari s dan diakhiri dengan (e-1)

batal jelas ()

menghapus semua elemen

batal memastikanCapacity (int c)

Ini meningkatkan kapasitas sebesar c

void setSize (int s)

Ini mengatur ukuran menjadi s. Jika s> size, extra capacity diisi dengan nilai null. Jika s

Object elementAt (int a)

mengembalikan elemen yang ada pada nomor indeks a

Set objek (int a, Objek o)

mengganti elemen yang ada di indeks a dengan elemen yang diberikan o

Objek [] toArray ()

mengembalikan larik yang berisi elemen yang sama dengan vektor

Objek clone ()

Objek vektor disalin

Boolean addAll (Koleksi c)

java membuat berbagai objek

menambahkan semua elemen Collection c ke vektor

Boolean addAll (int a, Collection c)

menyisipkan semua elemen Collection c ke vektor pada indeks yang ditentukan a

Retensi Boolean Semua (Koleksi c)

mempertahankan semua elemen dalam vektor yang juga ada di Collection c

Daftar subList (int s, int e)

mengembalikan elemen, sebagai objek List, dimulai dari s dan diakhiri dengan (e-1) dari vektor.

Karena setiap hal yang baik akan berakhir, begitu pula blog kami di Vektor di . Kami berharap dapat mencakup semua aspek vektor java di blog ini dan Anda dapat mengumpulkan beberapa pengetahuan tentang Vektor.

Pastikan Anda berlatih sebanyak mungkin dan mengembalikan pengalaman Anda.

Lihat oleh Edureka, perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar yang puas dan tersebar di seluruh dunia. Kami di sini untuk membantu Anda dengan setiap langkah dalam perjalanan Anda, untuk menjadi selain pertanyaan wawancara java ini, kami hadir dengan kurikulum yang dirancang untuk siswa dan profesional yang ingin menjadi Pengembang Java.

Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar pada 'Vektor di Jawa' ini artikel dan kami akan menghubungi Anda kembali sesegera mungkin.