Gå til innhold

Sette objekt lik en variabel


Anbefalte innlegg

Skrevet

Hei,

 

Holder på med et Javaprosjekt, og lurer på om det er noen måte å få en ny variabel til å referere til en annen en. Altså; ikke gi den nye variabelen VERDIEN av den andre, men slik at man faktisk kan referere til (og endre) den gamle variabelen via den nye.

 

Eks:

int valgt_tall1;
int valgt_tall2;
int valgt_tall3;

int valgt_tall;

if(tall==1) {
 valgt_tall = valgt_tall1;
} else if(tall==2) {
 valgt_tall = valgt_tall2;
} else if(tall==3) {
 valgt_tall = valgt_tall3;
}

valgt_tall = ET_ELLER_ANNET;

 

Da skal altså verdien av valgt_tall1, 2 eller 3 endres og ikke valgt_tall, om dere forstår. Slik det står nå forblir de tre opprinnelige variabelene uendret, mens valgt_tall får den nye verdien. Håper noen forstår problemet mitt, og om det finnes en løsning er jeg svært takknemlig! ;)

Videoannonse
Annonse
Skrevet

er litt usikker, men jeg tror dette er mulig med vanlige objekt. obj 1 = obj 2 gjør at obj 1 blir en referanse til obj 2. problemet ditt er at du bruker int, som er en primitiv datatype hvor du ikke har referanser. det betyr at dette ikke vil fungere med int, men med feks Integer, som er et objekt.

Skrevet
er litt usikker, men jeg tror dette er mulig med vanlige objekt. obj 1 = obj 2 gjør at obj 1 blir en referanse til obj 2. problemet ditt er at du bruker int, som er en primitiv datatype hvor du ikke har referanser. det betyr at dette ikke vil fungere med int, men med feks Integer, som er et objekt.

Ah, takk skal du ha.. Skal prøve dette når jeg får tid.

Skrevet

Om jeg forstår deg riktig, så vil du benytte det som i C/C++ kalles referanseoverførnig. Funker dårlig i Java siden du ikke kan bruke pekere... Men det er sikkert en vei utenom, kanskje callback?

Skrevet

Det skal vel gå hvis du bruker Integer på alle tallene tror jeg :roll:

 

Setter du et objekt til å være lik et annet objekt så er de det samme objektet vel..

 

Integer tall1;

Integer tall2 = tall1;

 

Nå skal vel tall2 i teorien være akkurat det samme som tall1 og hvis du forandre tall2

så blir tall1 forandret. Men det er mulig dette gjelder kun ved parameteroverføring?

  • 4 uker senere...
Skrevet
Integer tall1;

Integer tall2 = tall1;

 

Nå skal vel tall2 i teorien være akkurat det samme som tall1 og hvis du forandre tall2

så blir tall1 forandret.

 

Dette gjelder alle objekter (også arrays) i java.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...