You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 12 Next »

En datatype er en klassifisering som kan identifisere data, i den forstand at datatypen bestemmer hvilke verdier dataene kan ha, hvilke operasjoner som kan gjøres med verdier av denne datatypen og tildels meningen med dataene.

Vi kan ofte dele datatypene inn i noen overordnede grupper:

Talldata:

Tall representeres ofte som integer eller double.

Integer

Dersom data er av typen integer, begrenser dette verdiene dataene kan ha til heltall.
Int-tallene ligger etter hverandre, som på en tallinje i begge retninger.
Av praktisk grunner er heltallene avgrenset til en minimum-/maksimum-verdi, som i java ser slik ut: MIN_VALUE ...-2,-1,0,1,2 ... Integer.MAX_VALUE

Hva kan vi gjøre med integer?

- Beregne nye tall: 1 + 2 – 3 * 4 / 5 % 6
- Sammenligne med andre tall: ==, !=, <, <=, >=, > 
- Operere på dem som binære tall med: &, | og ~ 
 

Integer i java
int heltall;

heltall = 1337; // Lovlig verdi for integer-variabelen
heltall = 10.3; // Ulovlig
heltall = 5/2;  // Lovlig (heltallsdivisjon)
heltall = 5.0/2 // Ulovlig 

heltall = 2;
heltall < 3.2 // true
 

 

Double

Dersom data er av typen double, kan dataene ha verdier som desimaltall. Faktisk vil selv heltallsverdier "omgjøres" til desimaltall.  
Med double kan man beregne nye tall, og sammenligne de med andre tall.

Double i java
double desimaltall;

desimaltall = 13.37; // Lovlig verdi for double-variabelen
desimaltall =  10;  // Lovlig, tolkes som 10.0
 
double annetDesimaltall = desimaltall/2.3; // Lovlig
 
desimaltall == 10 // true, siden de er samme faktiske verdi
desimaltall != 3 // true


Strengdata:

Når vi skal lagre tekst eller tegn brukes datatypene String eller char.


Char (Character)

Dersom vi har data bestående av en bokstav, et siffer eller et tegn kan dataene være av typen char
Teknisk sett ligger alle char-verdier etter hverandre på en tall linje, slik som integers. Alle char kan derav representeres som en tallverdi.

Hva kan/er meningsfylt å gjøre med en char

- Klassifisere data som som bokstav, stor/liten bokstav, siffer
- Gjøre om til stor/liten bokstav
- Konvertering mellom siffer og tall, f.eks. fra ‘1’ til 1
- Sammenligne med andre char-data

Char i java
char tegn;

tegn = 'A'; // I java defineres en char med enkle apostrofer. 
tegn = Character.toLowerCase(tegn); // tegn settes lik 'a' ved hjelp av en forhåndsdefinert metode som finnes i java
 
 
tegn = '#'; // Lovlig char-verdi
tegn = 't5'; // Ulovlig char-verdi, kan ikke bestå av flere tegn. Se String i stedet
 
tegn = '2'; // Lovlig char-verdi
tegn == 2; // false, da int og char ikke er like, selv om verdien ser lik ut.


//Konvertering mellom char og int krever litt triksing:


// 1) Hvis man forsøke caste en char til int, vil dette gi svært rare resultater:

int heltall = (int) tegn;  // heltall settes lik 50?? 

// Dette skyldes, som nevnt ovenfor, at alle char-verdier ligger på en tall-linje. Vi vet nå at '2' er representert på plass 50 langs denne tall-linjen.

// 2) I java må vi konvertere char-verdien til en Sting, og deretter "parse" String-verdien til et integer. Det kan gjøres slik
 
String s = Character.toString(tegn); // Bruker en ny forhåndsdefinert metode i java
int heltall = Integer.parseInt(s); // heltall settes nå lik integer-verdien 2.
 


String


Dersom vi har data bestående av tekst vil dataene være av typen String


Logiske data:


Tabelldata

DENNE SIDEN ER UNDER UTVIKLING

  • No labels