Scambia oggetti in java

Scambia oggetti in java
Mentre si tratta di dati sfusi in Java, diventa difficile per lo sviluppatore aggiornare più valori convenientemente. Ad esempio, scambiare il complesso, io.e., "codificato"Valori con le voci contenute che mantengono intatti gli altri record e le funzionalità del codice. In tali scenari di caso, "scambiare oggetti"In Java fa miracoli a ridurre la seccatura e risparmiare tempo alla fine del programmatore.

Questo articolo dimostrerà le metodologie a "scambiare oggetti" usando Java.

Come "scambiare oggetti" in Java?

Gli oggetti in Java possono essere scambiati utilizzando la funzione definita dall'utente combinata con quanto segue:

  • "Operatori aritmetici".
  • "WrapperClasse "e"Operatore di assegnazione".

Approccio 1: scambiare oggetti in Java usando gli "operatori aritmetici"

In questo approccio, gli oggetti di classe possono essere scambiati eseguendo operazioni aritmetiche sugli oggetti creati tramite "definito dall'utente" funzione:

Classe SwappingObj
Età pubblica;
Public SwappingObj (int age)
Questo.età = età;

Classe pubblica Temp
swap di vuoto statico pubblico (valori scambiati1,
Swappingobj value2)
valore1.età = value1.età + valore2.età;
valore2.età = value1.Età - Valore2.età;
valore1.età = value1.Età - Valore2.età;

Secondo quanto sopra "classe"Codice, applica i seguenti passaggi:

  • In primo luogo, definisci una classe chiamata "Scambiandobj".
  • Nella sua definizione, specificare la variabile dichiarata.
  • Inoltre, crea un costruttore di classe con il parametro dichiarato.
  • Nella definizione del costruttore, fare riferimento alla variabile specificata e allocarla al valore del parametro tramite "Questo".
  • Si noti che questo valore verrà passato in seguito come argomento tramite "principale()" metodo.
  • Ora, definisci una funzione chiamata "scambio()"Avere i parametri forniti che si riferiscono agli oggetti che devono essere scambiati.
  • Nella sua definizione, fare riferimento alla variabile di classe principale specificata, i.e., "età".
  • Successivamente, conservare l'aggiunta del superato "età"Valori nel parametro della funzione precedente, i.e., "valore1".
  • Allo stesso modo, restituire la sottrazione del superato "età"Valori in primo luogo negli oggetti indicati"valore2"E poi in"valore1".
  • Nota: La sottrazione negli ultimi due casi non produrrà lo stesso risultato dal valore aggiornato dei parametri, i.e., "valore1" E "valore2"Sarà invocato nel secondo ultimo e ultimo calcolo, rispettivamente.

Ora, facciamo la panoramica del sotto fornito "principale()" metodo:

public static void main (string [] args)
SwappingObj obj1 = new SwappingObj (18);
SwappingObj obj2 = nuovo SwappingObj (25);
Sistema.fuori.println ("prima di scambiare->");
Sistema.fuori.println ("Il primo oggetto è:" + obj1.età);
Sistema.fuori.println ("Il secondo oggetto è:" + obj2.età);
swap (obj1, obj2);
Sistema.fuori.println ("dopo lo scambio->");
Sistema.fuori.println ("Il primo oggetto è:" + obj1.età);
Sistema.fuori.println ("Il secondo oggetto è:" + obj2.età);

In questo frammento di codice:

  • Crea due oggetti di classe chiamati "obj1" E "obj2"Tramite il"nuovo"Parola chiave e"Scambiandobj ()"Costruttore, rispettivamente.
  • Nel parametro del costruttore, passa i due "età"Valori che devono essere scambiati e visualizzarli.
  • Ora, invoca la funzione "scambio()"E passare gli oggetti di classe creati come argomenti.
  • Ciò di conseguenza scambierà i valori degli oggetti passati tramite gli operatori aritmetici.

Intero codice

Classe SwappingObj
Età pubblica;
Public SwappingObj (int age)
Questo.età = età;

Classe pubblica Temp
swap di vuoto statico pubblico (valori scambiati1,
Swappingobj value2)
valore1.età = value1.età + valore2.età;
valore2.età = value1.Età - Valore2.età;
valore1.età = value1.Età - Valore2.età;

public static void main (string [] args)
SwappingObj obj1 = new SwappingObj (18);
SwappingObj obj2 = nuovo SwappingObj (25);
Sistema.fuori.println ("prima di scambiare->");
Sistema.fuori.println ("Il primo oggetto è:" + obj1.età);
Sistema.fuori.println ("Il secondo oggetto è:" + obj2.età);
swap (obj1, obj2);
Sistema.fuori.println ("dopo lo scambio->");
Sistema.fuori.println ("Il primo oggetto è:" + obj1.età);
Sistema.fuori.println ("Il secondo oggetto è:" + obj2.età);

Produzione

In questo risultato, si può analizzare che i valori degli oggetti vengono scambiati in modo appropriato.

Approccio 2: scambiare oggetti in Java usando la "classe wrapper" e "operatore di assegnazione"

In questo particolare approccio, l'oggetto di classe creato può essere scambiato con l'aiuto di una classe wrapper esterna facendo un riferimento alla classe principale e all'operatore di assegnazione "=":

Oggetto di classe
Età pubblica;
oggetto (int age)
Questo.età = età;

Classe Wrapper
Oggetto x;
Wrapper (oggetto interno)
Questo.x = interno;

classe pubblica temp2
STATICO STATICO SWAP (Wrapper Object1, Wrapper Object2)
temp oggetto;
temp = object1.X;
Oggetto1.X = Object2.X;
Oggetto2.x = temp;

Nelle righe precedenti del codice di classe, applica i seguenti passaggi:

  • Ricorda gli approcci discussi per definire una classe e fare riferimento alla variabile specificata con l'aiuto del costruttore di classe.
  • Dopodiché, dichiara una classe di avvolgimento chiamata "Wrapper".
  • Nella sua definizione, fare riferimento alla classe principale denominata "oggetto"E specifica la variabile"X"Basato su questo.
  • Inoltre, includi un costruttore di classe e assegna il valore dell'oggetto passato alla variabile specificata tramite "Questo".
  • Ora, allo stesso modo, definisci una funzione di swap chiamata "scambio()"Dove i parametri della funzione indicano i valori degli oggetti che devono essere scambiati.
  • Nella definizione della funzione, allo stesso modo, passare un riferimento della classe principale alla variabile "temp"E assegnalo il valore dell'oggetto precedente avvolto nella classe Wrapper.
  • Nel passaggio successivo, allocare il valore di quest'ultimo oggetto all'oggetto precedente.
  • Infine, assegna il valore aggiornato di "temp"A quest'ultimo oggetto avvolto, io.e., "Oggetto2".

Ora, procediamo a "principale()" metodo:

public static void main (string [] args)
oggetto ob1 = nuovo oggetto (25);
oggetto ob2 = nuovo oggetto (30);
Wrapper swapobject1 = nuovo wrapper (ob1);
Wrapper swapobject2 = nuovo wrapper (OB2);
Sistema.fuori.println ("prima di scambiare -> \ nage1:" + swapobject1.X.età +
"\ n" + "age2:"
+ swapobject2.X.età + "\ n");
swap (swapObject1, swapObject2);
Sistema.fuori.println ("Dopo lo scambio -> \ nage1:" + swapobject1.X.età +
"\ n" + "age2:"
+ swapobject2.X.età);

Secondo quanto sopra "principale()"Metodo, applica i seguenti passaggi:

  • Ripeti gli approcci spiegati per la creazione di oggetti di classe e passa il dichiarato "età"Valori come parametri del costruttore.
  • Nel passaggio successivo, crea due oggetti di classe Wrapper e avvolgi gli oggetti della classe principale come parametri del costruttore.
  • Inoltre, visualizza il risultato prima di scambiare gli oggetti.
  • Ora, accedi al "scambio()"Funzionare e passare gli oggetti di classe avvolti come argomenti.
  • Ciò comporterà lo scambio di "principale"Oggetti di classe.

Intero codice

Oggetto di classe
Età pubblica;
oggetto (int age)
Questo.età = età;

Classe Wrapper
Oggetto x;
Wrapper (oggetto interno)
Questo.x = interno;

classe pubblica temp2
STATICO STATICO SWAP (Wrapper Object1, Wrapper Object2)
temp oggetto;
temp = object1.X;
Oggetto1.X = Object2.X;
Oggetto2.x = temp;

public static void main (string [] args)
oggetto ob1 = nuovo oggetto (25);
oggetto ob2 = nuovo oggetto (30);
Wrapper swapobject1 = nuovo wrapper (ob1);
Wrapper swapobject2 = nuovo wrapper (OB2);
Sistema.fuori.println ("prima di scambiare -> \ nage1:" + swapobject1.X.età +
"\ n" + "age2:"
+ swapobject2.X.età + "\ n");
swap (swapObject1, swapObject2);
Sistema.fuori.println ("Dopo lo scambio -> \ nage1:" + swapobject1.X.età +
"\ n" + "age2:"
+ swapobject2.X.età);

Produzione

Questo output implicava che lo scambio viene eseguito in modo appropriato tramite la classe wrapper e la funzione definita dall'utente.

Conclusione

Gli oggetti in Java possono essere scambiati utilizzando la funzione definita dall'utente combinata con "Operatori aritmetici" o il "WrapperClasse "e"Operatore di assegnazione". Il primo approccio scambia gli oggetti ed esegue semplicemente i calcoli in base ai valori degli oggetti aggiornati in ogni fase. Quest'ultimo approccio applica lo scambio facendo riferimento agli oggetti della classe principale, avvolgendoli e utilizzando l'operatore di assegnazione nella funzione definita dall'utente. Questo articolo ha guidato sullo scambio di oggetti in Java.