Gå til innhold

Generiske typer i java


Anbefalte innlegg

Videoannonse
Annonse

Det er en variabel for typer, kan man vel lettfattelig si.

 

Hvis du ønsker en klasse Pair, som rett og slett inneholder to ting, for eksempel strenger, kan du lage

class Pair {
  String s1;
  String s2;
  // alt annet
}

 

Men hvis du senere vil ha en klasse som inneholder to heltall, må du lage en ny klasse:

class Pair {
  Integer i1;
  Integer i2;
  // alt annet
}

 

Og så kanskje en klasse med et tall og en streng:

class Pair {
  Integer i1;
  String s2;
  // alt annet
}

 

Og så en klasse med, tja, det bør oppstå en følelse snart om at man har skrevet for mye kode. Men vi kan alltids lage en klasse med to flyttall:

class Pair {
  Float f1;
  Float f2;
  // alt annet
}

 

Som ikke fungerer så bra dersom man vil ha double-presisjon.

class Pair {
  Double d1;
  Double d2;
  // alt annet
}

 

Nå har vi skrevet nok. Da erstatter vi alle over med:

 

class Pair<T, U> {
  T t1;
  U t2;
  // alt annet
}

Der T er første typen og U er andre typen.

 

Da kan man lagre en streng og et flyttall i den slik:

Pair<String, Integer> stringNNumber = new Pair<String, Integer>();

Takk for meg.

Endret av pgdx
Lenke til kommentar

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å
×
×
  • Opprett ny...