Lompat ke konten Lompat ke sidebar Lompat ke footer

Cara Bertukar Objek Java dan Fungsinya

Asumsikan sebuah class dipanggil pada program dengan nama "Car" beserta atribut isinya. Kemudian diciptakan dua objek dari Car, yaitu car1 dan car2, berikut adalah cara yang dapat digunakan untuk dapat melakukan pertukaran object antara car1 dan car2.


Sebelum lebih lanjut mempelajari materi tentang Cara Bertukar Objek Java dan Fungsinya, terlebih dahulu pelajari materi tentang: Class dan Object Java dan Fungsinya, Alokasi Memori Java Objek dan Fungsinya, dan Cara Menciptakan Objek Java dan Fungsinya.

Memahami Pertukaran Objek dalam Java

Dalam Java, objek dimanipulasi oleh referensi, yang berarti ketika pengembang meneruskan objek sebagai parameter ke metode atau menetapkannya ke variabel. Pengembang sebenarnya meneruskan atau menetapkan referensi ke objek, bukan objek itu sendiri. Menukar objek melibatkan pertukaran referensi ini antara variabel.

Menukar objek, atau pertukaran nilai antara variabel, adalah tugas umum dalam pemrograman. Dalam Java, pertukaran objek mengikuti sintaksis dan pertimbangan tertentu karena sifat pengiriman dengan referensi untuk tipe non-primitif. Artikel ini akan membahas secara mendalam tentang cara menukar objek dalam Java, sintaksisnya, dan fungsi-fungsinya dalam pemrograman. Cara Sederhana untuk Menukar Anggota Class:

Contoh: Jika class hanya memiliki satu atribut integer dengan nama "no" (nomor polisi), maka nilai tersebut bisa ditukar sama seperti halnya menukar nilai anggota dari dua object Car.

// Program java

// mendemonstrasikan

// pertukaran dua objek

// anggota.

 

// sebuah car dengan class

// number car.

class Car

{

int no; 

Car(int no

{ this.no = no; } 

 

// Sebuah class menggunakan

// objek car

class Main 

 

/* tukar c1 dan c2 */ 

public static void swap(Car c1, Car c2)

int temp = c1.no; 

c1.no = c2.no; 

c2.no = temp;

 

/* Driver method */

public static void main(String[] args

Car c1 = new Car(1); 

Car c2 = new Car(2); 

swap(c1, c2); /*tukar nilai*/

System.out.println("c1.no = "

+ c1.no); 

System.out.println("c2.no = "

+ c2.no); 

}

 

}

Output:
c1.no = 2
c2.no = 1

Jika Nilai Anggota dari Car Tidak Diketahui

Solusi sebelumnya dapat dijalankan jika hanya terdapat satu anggota "no" pada class Car. Namun, bagaimana jika tidak diketahui nilai anggota dari Car atau list anggota nilainya terlalu besar. Hal ini adalah situasi umum dimana class menggunakan beberapa class lain dan tidak dapat mengakses anggota class. Berikut solusi yang dapat digunakan.

Contoh:

// Program java

// mendemonstrasikan

// pertukaran sederhana,

// dimana objek referensi

// tidak berfungsi.

 

// constructor car dengan

// angka dan nama.

class Car 

{

 

int model, no; 

 

/* Constructor */

Car(int model, int no){ 

this.model = model; 

this.no = no;} 

 

// method utility untuk

// mencetak nilai car.

void print() { 

System.out.println("no = " 

+no 

+", model = "

+ model);}

 

 

// sebuah class yang

// menggunakan Car.

class Main 

{

 

// swap() tidak dapat menukar

// nilai c1 dan c2.

public static void swap(Car c1, Car c2)

Car temp = c1; 

c1 = c2; 

c2 = temp;

 

/* Driver method */

public static void main(String[] args

Car c1 = new Car(101, 1); 

Car c2 = new Car(202, 2); 

swap(c1, c2); 

c1.print(); 

c2.print(); 

}

 

}

Output:
no = 1, model = 101
no = 2, model = 202

Dari hasil ouput program sebelumnya, nilai objek tidak mengalami pertukaran apapun. Telah dibahas pada materi sebelumnya, bahwa parameter hanya dilewati oleh nilai pada Java. Jadi, ketika c1 dan c2 ditukar (swap()), maka fungsi swap() akan menciptakan duplikasi dari referensi.

Baca Juga:

Solusi dari permasalahan ini adalah menggunakan wrapper class (class pembungkus). Jika diciptakan wrapper class yang mengandung nilai refernsi dari Car, maka dapat dilakukan pertukaran nilai car dengan cara swapping referensi dari wrapper class.

Contoh:

// Program Java

// mendemonstrasikan

// penggunaan wrapper class

// untuk menukar objek.

 

/* car dengan model dan no */

class Car 

 

int model, no; 

 

/* Constructor */

Car(int model, int no){ 

this.model = model; 

this.no = no;} 

 

// Utility method untuk

// mencetak rincian object.

void print(){ 

System.out.println("no = "

+no

+", model = "

+ model);} 

 

 

// Wrapper class digunakna

// untuk menukar. 

class CarWrapper 

 

Car c; 

/* Constructor */

CarWrapper(Car c) {this.c = c;} 

 

 

// sebuah class yang

// menggunakan car dan swap

// objek dari car menggunakan

// CarWrapper.

class Main 

 

// method ini menukar object

// car dapat wrapper.

 

/* cw1 dan cw2 */

public static void swap(CarWrapper cw1, CarWrapper cw2

Car temp = cw1.c; 

cw1.c = cw2.c; 

cw2.c = temp; 

 

/* Driver method */

public static void main(String[] args

Car c1 = new Car(101, 1); 

Car c2 = new Car(202, 2); 

CarWrapper cw1 = new CarWrapper(c1); 

CarWrapper cw2 = new CarWrapper(c2); 

swap(cw1, cw2); 

cw1.c.print(); 

cw2.c.print(); 

}

 

}

Output:
no = 2, model = 202
no = 1, model = 101

Penggunaan wrapper class dapat bekerja sebagai solusi bahkan jika user class tidak memiliki akses terhadap anggota dari class dimana object-nya akan ditukar.

Sintaksis untuk Menukar Objek

Untuk menukar objek dalam Java, biasanya diikuti langkah-langkah berikut:
  • Membuat Objek Sementara: Pertama, buat objek sementara untuk menahan salah satu objek selama proses pertukaran.
  • Menukar Referensi: Menetapkan referensi dari objek yang akan ditukar satu sama lain.
  • Memperbarui Variabel: Memperbarui variabel dengan referensi baru setelah pertukaran.

Contoh: Berikut adalah contoh yang mengilustrasikan proses tersebut.

public class PertukaranObjek {


public static void 

tukarObjek(Object[] array, int i, int j

{

Object temp = array[i];

array[i] = array[j];

array[j] = temp;

}


public static void 

main(String[] args

{

Integer[] array = {

1, 2, 3, 4, 5};

        System.out.println("Sebelum 

pertukaran: " 

+ Arrays.toString(array));


tukarObjek(array, 0, 4);

        System.out.println("Setelah 

pertukaran: " 

+ Arrays.toString(array));

}

}

Pada contoh ini, didefinisikan metode tukarObjek() yang mengambil sebuah array objek dan dua indeks. Ini menukar objek pada indeks yang ditentukan dalam array.

Fungsi-fungsi Pertukaran Objek

Pertukaran objek memiliki beberapa fungsi dalam pemrograman Java, termasuk:
  • Mengurutkan Elemen: Menukar objek memungkinkan untuk mengurutkan elemen dalam struktur data seperti array atau daftar. Ini berguna untuk algoritma pengurutan dan operasi lain di mana posisi elemen perlu diubah.
  • Optimalisasi Algoritma: Beberapa algoritma mungkin memerlukan pertukaran objek sebagai bagian dari proses optimalisasinya. Misalnya, dalam algoritma grafik seperti Dijkstra atau Kruskal, pertukaran objek dapat mengoptimalkan proses penjelajahan atau pencarian jalur.
  • Manajemen Sumber Daya: Pertukaran objek dapat digunakan untuk manajemen sumber daya yang efisien. Misalnya, dalam sistem manajemen memori, pertukaran objek antara lokasi memori yang berbeda dapat mengoptimalkan penggunaan memori dan meningkatkan kinerja.
  • Transisi Status: Pertukaran objek dapat memfasilitasi transisi status dalam aplikasi. Misalnya, dalam aplikasi game, menukar objek pemain dapat mewakili perubahan posisi atau atribut pemain selama permainan.

Kesimpulan

Pertukaran objek adalah operasi fundamental dalam pemrograman Java, memungkinkan untuk memanipulasi objek secara efisien dalam program. Dengan memahami sintaksis dan fungsi pertukaran objek, maka dapat memanfaatkan kemampuannya untuk mengoptimalkan algoritma, mengelola sumber daya, dan memfasilitasi transisi status dalam aplikasi Java. Dengan penggunaan yang tepat, pertukaran objek meningkatkan fleksibilitas, efisiensi, dan fungsionalitas program Java, berkontribusi pada solusi perangkat lunak yang kuat dan skalabel.

Referensi Tambahan:

Artikel ini didedikasikan kepada: Emmanuel Putra Jatmiko, Erika Dwi Athala, Ferry Bangsawan, Findhi Afifatul Latifah, dan Ibnu Adrianto.

5 komentar untuk "Cara Bertukar Objek Java dan Fungsinya"

  1. Apa yang dimaksud dengan class dan object pada bahasa pemrograman Java?

    BalasHapus
    Balasan
    1. Hal pertama yang harus diketahui dari Java adalah Java merupakan bahasa pemrograman berorientasi object, dimana program Java terbuat dari object-object dan class.

      Hapus
    2. Object dalam dunia nyata adalah segala sesuatu yang memiliki keadaan dan perilaku. Contoh, kipas angin, dimana kipas angin tersebut memiliki status berupa warna, sayap, merek, dan lain sebagainya. Dengan perilaku dari kipas angin adalah baling-baling atau kipasnya berputar. Bahkan dalam bentuk perangkat lunak. object-nya tetap mirip dengan object pada dunia nyata. Object menyimpan status dalam suatu bidang, yaitu variabel dalam bahasa pemrograman dan perilaku dijelaskan dengan suatu method yang disebut dengan fungsi.

      Hapus
    3. Object selalu diciptakan untuk sebuah class. Class adalah sesuatu yang dapat diperlakukan sebagai template yang menampung bidang dan method yang berkaitan dengan sekelompok object serupa. Contoh, sebuah class dapat dimana sebagai "hewan" yang terdiri dari beberapa bidang berupa: ras, anggota badan hewan, warna, dengan method: makan, berlari, tidur, dan lain sebagainya. Jadi, class hanyalah sebuah template untuk mendeskripsikan sekelompok object yang serupa.

      Hapus
    4. Objek dari suatu class dapat berkomunikasi melalui method. Inilah dasar komunikasi pada bahasa pemrograman Java.

      Hapus

Hubungi admin melalui Wa : +62-896-2414-6106

Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung.

Bantu admin meningkatkan kualitas blog dengan melaporkan berbagai permasalahan seperti typo, link bermasalah, dan lain sebagainya melalui kolom komentar.

- Ikatlah Ilmu dengan Memostingkannya -
- Big things start from small things -