Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Kokonaislukutietotyypit | Tietotyyppien Käsittely
C# Perusteet

bookKokonaislukutietotyypit

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ä tiedämme vain int-tyypin. Voimme määritellä kokonaislukumuuttujan seuraavasti:

int myVariable = 10;

Tässä tapauksessa voimme myös määritellä muuttujan ilman alkuarvoa:

int myVariable;

Huomio

Alkuarvon antamista muuttujalle määrittelyn yhteydessä kutsutaan alustamiseksi.

Avainsana var mahdollistaa kääntäjän päätellä muuttujan tietotyypin automaattisesti annetun arvon perusteella. Esimerkiksi lauseessa var myVariable = 7; muuttuja myVariable saa kokonaislukuarvon, jolloin sen tietotyyppi on int. Tällainen muuttuja on implisiittisesti tyypitetty muuttuja.

Huomio

Kun käytetään avainsanaa var, muuttuja täytyy aina alustaa samalla, joten var omaMuuttuja; ei ole sallittu.

Toisaalta tietotyypin määrittely manuaalisesti ei vaadi alkuarvoa. Siksi sekä int myVariable; että int myVariable = 10; ovat kelvollisia lauseita. Tässä tapauksessa myVariable on eksplisiittisesti tyypitetty muuttuja.

Seuraava koodi tiivistää edellä mainitut kaksi kappaletta:

main.cs

main.cs

copy
12345
var 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

main.cs

copy
12
int myVar; System.Console.WriteLine(myVar); // Error: Use of unassigned local variable 'myVar'

Korjaus:

main.cs

main.cs

copy
123
int myVar; myVar = 10; System.Console.WriteLine(myVar); // Output: 10

Voimme asettaa muuttujalle uuden arvon niin monta kertaa kuin haluamme:

main.cs

main.cs

copy
12345678
int 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ä alueella. On olemassa toinen tietotyyppi, long, joka on samanlainen kuin int, mutta se voi tallentaa suurempia lukuja.

Suuremman luvun tallentaminen kuin tietotyyppi sallii voi johtaa odottamattomiin tuloksiin.

Voimme suorittaa aritmeettisia operaatioita int- ja long-datalle. Seuraava koodiesimerkki näyttää joitakin esimerkkejä:

main.cs

main.cs

copy
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. Ilman etumerkkiä olevat tietotyypit voivat sisältää vain positiivisia lukuja, minkä vuoksi niiden positiivinen lukuväli on suurempi.

question mark

Mitä avainsanaa käytetään kokonaislukumuuttujan määrittelyyn C#:ssa?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 1

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Suggested prompts:

What are some examples of arithmetic operations with int and long?

Can you explain the difference between signed and unsigned data types?

When should I use int, long, uint, or ulong in my code?

Awesome!

Completion rate improved to 1.59

bookKokonaislukutietotyypit

Pyyhkäise näyttääksesi valikon

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ä tiedämme vain int-tyypin. Voimme määritellä kokonaislukumuuttujan seuraavasti:

int myVariable = 10;

Tässä tapauksessa voimme myös määritellä muuttujan ilman alkuarvoa:

int myVariable;

Huomio

Alkuarvon antamista muuttujalle määrittelyn yhteydessä kutsutaan alustamiseksi.

Avainsana var mahdollistaa kääntäjän päätellä muuttujan tietotyypin automaattisesti annetun arvon perusteella. Esimerkiksi lauseessa var myVariable = 7; muuttuja myVariable saa kokonaislukuarvon, jolloin sen tietotyyppi on int. Tällainen muuttuja on implisiittisesti tyypitetty muuttuja.

Huomio

Kun käytetään avainsanaa var, muuttuja täytyy aina alustaa samalla, joten var omaMuuttuja; ei ole sallittu.

Toisaalta tietotyypin määrittely manuaalisesti ei vaadi alkuarvoa. Siksi sekä int myVariable; että int myVariable = 10; ovat kelvollisia lauseita. Tässä tapauksessa myVariable on eksplisiittisesti tyypitetty muuttuja.

Seuraava koodi tiivistää edellä mainitut kaksi kappaletta:

main.cs

main.cs

copy
12345
var 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

main.cs

copy
12
int myVar; System.Console.WriteLine(myVar); // Error: Use of unassigned local variable 'myVar'

Korjaus:

main.cs

main.cs

copy
123
int myVar; myVar = 10; System.Console.WriteLine(myVar); // Output: 10

Voimme asettaa muuttujalle uuden arvon niin monta kertaa kuin haluamme:

main.cs

main.cs

copy
12345678
int 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ä alueella. On olemassa toinen tietotyyppi, long, joka on samanlainen kuin int, mutta se voi tallentaa suurempia lukuja.

Suuremman luvun tallentaminen kuin tietotyyppi sallii voi johtaa odottamattomiin tuloksiin.

Voimme suorittaa aritmeettisia operaatioita int- ja long-datalle. Seuraava koodiesimerkki näyttää joitakin esimerkkejä:

main.cs

main.cs

copy
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. Ilman etumerkkiä olevat tietotyypit voivat sisältää vain positiivisia lukuja, minkä vuoksi niiden positiivinen lukuväli on suurempi.

question mark

Mitä avainsanaa käytetään kokonaislukumuuttujan määrittelyyn C#:ssa?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 1
some-alt