Heltallsdatatyper
Sveip for å vise menyen
Datatyper er klassifisering av dataverdier i ulike kategorier basert på deres natur, som heltall, desimaltall, tekstdata osv. Hver datatype har ulike typer operasjoner knyttet til seg, for eksempel kan vi utføre aritmetiske operasjoner på numeriske data, men ikke på tekstdata.
Nøkkelordet int refererer til datatypen "integer" som i hovedsak representerer heltall.
I forrige seksjon lærte vi følgende syntaks for å deklarere en variabel:
var variableName = value;
I tillegg til syntaksen over, finnes det en annen metode for variabeldeklarasjon:
Her refererer type til datatypen til variabelen. Så langt kjenner vi kun til int. Vi kan erklære en variabel av heltallsdatatypen på følgende måte:
int myVariable = 10;
I dette tilfellet kan vi også erklære en variabel uten å gi den en startverdi:
int myVariable;
Å gi en variabel en startverdi ved deklarasjon kalles initialisering.
Nøkkelordet var lar kompilatoren automatisk utlede datatypen til en variabel basert på den tildelte verdien. For eksempel, i var myVariable = 7;, får variabelen myVariable en heltallsverdi, noe som gjør datatypen dens til int. En slik variabel kalles en implisitt typet variabel.
Når man bruker nøkkelordet var, må variabelen alltid initialiseres samtidig, derfor er det ugyldig å skrive var myVariable;.
På den andre siden krever ikke manuell spesifisering av datatype en startverdi. Derfor er både int myVariable; og int myVariable = 10; gyldige setninger. I dette tilfellet er myVariable en eksplisitt typet variabel.
Følgende kode oppsummerer de to foregående avsnittene:
main.cs
12345var myVar1 = 10; // Valid var myVar2; // Error: Implicitly-typed variables must be initialized int myVar3 = 10; // Valid int myVar4; // Valid
Det er viktig å merke seg at vi ikke kan bruke en variabel som ikke har fått tildelt noen verdi. Derfor vil følgende kode gi en FEIL:
main.cs
12int myVar; System.Console.WriteLine(myVar); // Error: Use of unassigned local variable 'myVar'
Korrigering:
main.cs
123int myVar; myVar = 10; System.Console.WriteLine(myVar); // Output: 10
Vi kan tilordne en variabel på nytt så mange ganger vi ønsker:
main.cs
12345678int myVar = 10; System.Console.WriteLine(myVar); // Output: 10 myVar = 15; System.Console.WriteLine(myVar); // Output: 15 myVar = 17; System.Console.WriteLine(myVar); // Output: 17 myVar = 7; System.Console.WriteLine(myVar); // Output: 7
En int-variabel kan bare lagre verdier innenfor et bestemt område. Det finnes en annen datatypen long som er lik int, men som kan lagre større tall.
Å lagre et større tall enn det en datatypen kan håndtere kan gi uventede resultater.
Vi kan utføre aritmetiske operasjoner på int- og long-data. Følgende kodeeksempel viser noen eksempler:
main.cs
1234567891011121314151617181920// int values int a = 10; int b = 25; int c = a + b; // long values long d = 1000; long e = 2500; long f = d + e; // Adding a 'long' and an 'int' always results in a 'long' resultant value. // Therefore we can store the result of 'd + a' into a new 'long' variable called 'g'. long g = d + a; // For the same reason, we cannot store the result of 'd + a' into an 'int' variable int h = d + a; // Error on this line int i = 5 / 2; System.Console.WriteLine(i); // Output: 2 // Dividing 5 by 2 gives 2.5 however since 'int' can only store integer values, hence the decimal (0.5) part is ignored.
Det finnes to andre datatyper, uint og ulong, kalt henholdsvis unsigned int og unsigned long. En unsigned datatype kan kun inneholde positive tall, og har derfor et større positivt område.
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår