Kokonaislukutietotyypit
Pyyhkäise näyttääksesi valikon
Tietotyypit ovat tietojen arvojen luokittelu eri kategorioihin niiden luonteen perusteella, kuten kokonaisluvut, desimaaliluvut, tekstimuotoinen data jne. Jokaisella tietotyypillä on erilaisia siihen liittyviä operaatioita; esimerkiksi aritmeettisia operaatioita voidaan suorittaa numeeriselle datalle, mutta ei tekstimuotoiselle datalle.
Avainsana int viittaa "integer"-tietotyyppiin, joka edustaa kokonaislukuja.
Edellisessä osiossa opimme seuraavan syntaksin muuttujan määrittelyyn:
var variableName = value;
Yllä olevan syntaksin lisäksi on olemassa toinen tapa määritellä muuttuja:
Tässä type viittaa muuttujan tietotyyppiin. Tähän mennessä tunnemme vain int-tyypin. Voimme määritellä kokonaislukumuuttujan seuraavasti:
int myVariable = 10;
Tässä tapauksessa voimme myös määritellä muuttujan ilman alkuarvoa:
int myVariable;
Muuttujan alkuarvon antamista määrittelyn yhteydessä kutsutaan alustamiseksi.
var-avainsana mahdollistaa tietotyypin automaattisen päätellyn arvon perusteella. Esimerkiksi var myVariable = 7; määrittää muuttujalle myVariable kokonaislukuarvon, jolloin sen tietotyyppi on int. Tällainen muuttuja on implisiittisesti tyypitetty muuttuja.
Kun käytetään var-avainsanaa, muuttuja täytyy aina alustaa samalla, joten var myVariable; ei ole sallittu.
Toisaalta tietotyypin määrittely manuaalisesti ei vaadi alkuarvoa. Siksi sekä int myVariable; että int myVariable = 10; ovat sallittuja lauseita. Tässä tapauksessa myVariable on eksplisiittisesti tyypitetty muuttuja.
Seuraava koodi tiivistää edellä mainitut kaksi kappaletta:
main.cs
12345var myVar1 = 10; // Valid var myVar2; // Error: Implicitly-typed variables must be initialized int myVar3 = 10; // Valid int myVar4; // Valid
On tärkeää huomata, että muuttujaa, jolle ei ole annettu arvoa, ei voi käyttää. Seuraava koodi aiheuttaa VIRHEEN:
main.cs
12int myVar; System.Console.WriteLine(myVar); // Error: Use of unassigned local variable 'myVar'
Korjaus:
main.cs
123int myVar; myVar = 10; System.Console.WriteLine(myVar); // Output: 10
Muuttujan arvoa voidaan asettaa uudelleen niin monta kertaa kuin halutaan:
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
int-muuttuja voi tallentaa arvoja vain tietyllä välillä. On olemassa myös toinen tietotyyppi, long, joka on samanlainen kuin int, mutta se voi tallentaa suurempia lukuja.
Suurempien lukujen tallentaminen kuin tietotyyppi sallii voi johtaa odottamattomiin tuloksiin.
int- ja long-datan kanssa voidaan suorittaa aritmeettisia operaatioita. Seuraava koodiesimerkki näyttää joitakin esimerkkejä:
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.
On olemassa kaksi muuta tietotyyppiä, uint ja ulong, joita kutsutaan nimillä unsigned int ja unsigned long. Epämerkkinen tietotyyppi voi sisältää vain positiivisia lukuja, minkä vuoksi niiden positiivinen alue on suurempi.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme