"Hei, Amigo!"

"Hei, Ellie!"

"Jeg er i godt humør i dag, så jeg har lyst til å fortelle deg noe interessant. Jeg starter med hvordan Javas typesystem håndterer primitive typer."

" I Java har hvert objekt og hver variabel sin egen forhåndsinnstilte uforanderlige type. En primitiv variabels type bestemmes når programmet kompileres, men et objekts type bestemmes når det opprettes. Typen til et nyopprettet objekt og/eller variabel forblir uendret i løpet av levetiden. Her er et eksempel:"

Java-kode Beskrivelse
int a = 11;
int b = 5;
int c = a / b; // c == 2
a / b– representerer heltallsdivisjon. Svaret er to. Resten fra divisjonsoperasjonen blir ganske enkelt ignorert.
int a = 13;
int b = 5;
int d = a % b; // d == 3
dvil lagre resten av heltallsdivisjon av amed b. Resten er 3.

"Det er et par interessante nyanser du må huske."

"For det første peker ikke en referansevariabel alltid til en verdi som har samme type som den har."

"For det andre, når variabler med to forskjellige typer samhandler, må de først konverteres til samme type."

"Hva med divisjon? Hvis vi deler 1 på 3, får vi 0,333(3). Ikke sant?"

"Nei, det er ikke riktig. Når vi deler to heltall, er resultatet også et heltall. Hvis du deler 5 med 3, vil svaret være 1 med to som resten. Og resten vil bli ignorert."

"Hvis vi deler 1 på 3, får vi 0 (med påminnelse 1, som vil bli ignorert)."

"Men hva gjør jeg hvis jeg vil få 0,333?"

"I Java, før du utfører divisjon, er det best å konvertere et tall til en flytende kommatype (brøk) ved å multiplisere med et flytende komma nummer én (1.0)."

Java-kode Beskrivelse
int a = 1/3;
avil være 0
double d = 1/3;
 d vil være 0,0
double d = 1.0 / 3;
dvil være 0,333(3)
double d = 1 / 3.0;
dvil være 0,333(3)
int a = 5, b = 7;
double d = (a * 1.0) / b;
dvil være 0,7142857142857143

"Har det."