();
data.add (new Double ( 4.0 ) ;
Double value = data.get ( 0 ) ;
erklæringen av ArrayList blir litt mer uhåndterlig , men programmerere kan gjenkjenne fordelene kompilatoren nå håndterer data støping og . den potensielt crash -forårsaker cast feil i den tredje linjen i 1,4 kode er fanget på kompilering .
Autoboxing
en av de smålige plager har blitt fjernet fra arbeidslivet med samlinger gjenstander samt . Mesteparten av tiden , vil rå numeriske data lagres i primitive , ikke- objekt datatyper som int og double . Men bare sitt objekt , klasse - baserte ekvivalenter lagres i en samling. in 1.4 , hadde programmerer å manuelt opprette et nytt objekt hver gang han eller hun ønsket å lagre et nummer i en samling, og kastet den tilbake til en primitiv datatype når den ble trukket ut . Autoboxing tillater Java for å håndtere dette automatisk , slik at koden : en
data.add (new Double ( 4,0 ));
kan nå bli erstattet med : en
data.add ( 4,0 ) ;
Java vil håndtere konvertering fra "double " til " Double" automatisk.
Enhanced for Loop
Når du lagrer data i en matrise eller noen av innsamling av data strukturer , kan programmereren forkorte tradisjonelle for buen fra det kjente : en
for ( int x = 0 ; x < data.size (); x + + ) {
//gjøre noe med hver dobbel i " data "
}
til mer kompakt og lett å lese : en
for ( Double d: data) {
//gjøre noe med hver dobbel i " data "
}
nummerert typer
Java 1.5 lagt til " enum " type til språket . Tradisjonelt, hvis en programmerer ønsket å holde styr på alle mulige verdier av et alternativ, hadde han eller hun å kartlegge ord til heltall ved hjelp av " final static int " datatype , som så : en
public class Stopplys {
int color = 0;
endelige static int RED = 0;
endelige static int GUL = 1;
endelige static int GRØNN = 2 ;
}
p Dette var kjedelig og bug- utsatt For eksempel , hva skjer hvis fargen blir Enum gjør løsningen langt mer elegant. "4 ? " : en
Stopplys Color = Stoplight.RED ;
public enum Stopplys {
RØD, GUL , GRØNN
};
motsetning til den gamle "endelig statisk" måten vet kompilatoren hva nå gyldige alternativer er for " Stopplys " og kan håndheve dem for oss . som en ekstra bonus, dersom verdien av "Color " skrives til konsollen , vil det ut som det engelske ordet , og ikke som et nummer .