Datatyper i C#: Double, Heltal, Float, Char
โก Smart sammanfattning
Datatyper i C# definierar vilken typ av vรคrden en variabel kan hรฅlla, allt frรฅn heltal och flyttal till booleska vรคrden och strรคngvรคrden, och de avgรถr hur mycket minne varje variabel reserverar under programkรถrning.

Vad รคr datatyper i C#?
C#-sprรฅket kommer med en uppsรคttning grundlรคggande datatyper. Dessa datatyper anvรคnds fรถr att bygga vรคrden som anvรคnds inom en applikation. Lรฅt oss utforska de grundlรคggande datatyperna som finns tillgรคngliga i C#. Fรถr varje exempel kommer vi att modifiera bara huvudfunktionen i vรฅr Program.cs-fil.
1) Heltal
En heltalsdatatyper anvรคnds fรถr att arbeta med siffror. I det hรคr fallet รคr talen heltal som 10, 20 eller 30. I C# betecknas datatypen med Int32 nyckelord. Nedan รคr ett exempel pรฅ hur denna datatyp kan anvรคndas. I vรฅrt exempel kommer vi att definiera en Int32-variabel som heter num. Vi kommer sedan att tilldela variabeln ett heltalsvรคrde och sedan visa det dรคrefter.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Int32 num=30; Console.Write(num); Console.ReadKey(); } } }
Code Fรถrklaring:-
- Datatypen Int32 รคr specificerad fรถr att deklarera en heltalsvariabel som kallas num. Variabeln tilldelas sedan vรคrdet 30.
- Slutligen anvรคnds console.write-funktionen fรถr att visa numret till konsolen.
Om ovanstรฅende kod matas in korrekt och programmet kรถrs framgรฅngsrikt, kommer fรถljande utdata att visas.
Produktion:
Frรฅn utgรฅngen kan du tydligt se att heltalsvariabeln som heter num visades i konsolen
2) Double
En dubbel datatyp anvรคnds fรถr att arbeta med decimaler. I det hรคr fallet รคr talen heltal som 10.11, 20.22 eller 30.33. I C# betecknas datatypen med nyckelordet "Double". Nedan รคr ett exempel pรฅ denna datatyp.
I vรฅrt exempel kommer vi att definiera en dubbelvariabel som kallas num. Vi kommer sedan att tilldela en Double vรคrde till variabeln och sedan visa den dรคrefter.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { double num=30.33; Console.Write(num); Console.ReadKey(); } } }
Code Fรถrklaring:-
- Dubbeldatatypen รคr specificerad fรถr att deklarera en dubbeltyp variabel kallas num. Variabeln tilldelas sedan vรคrdet 30.33.
- Slutligen anvรคnds console.write-funktionen fรถr att visa numret till konsolen.
Om ovanstรฅende kod matas in korrekt och programmet kรถrs framgรฅngsrikt, kommer fรถljande utdata att visas.
Produktion:
Frรฅn utgรฅngen kan du tydligt se att den dubbla variabeln som heter num visades i konsolen
3) Boolean
En boolesk datatyp anvรคnds fรถr att arbeta med booleska vรคrden pรฅ sant och falskt. I C# betecknas datatypen med det booleska nyckelordet. Nedan รคr ett exempel pรฅ att denna datatyp kan anvรคndas.
I vรฅrt exempel kommer vi att definiera en boolesk variabel som heter 'status'. Vi kommer sedan att tilldela variabeln ett booleskt vรคrde och sedan visa det dรคrefter.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Boolean status=true; Console.Write(status); Console.ReadKey(); } } }
Code Fรถrklaring:-
- Den booleska datatypen รคr specificerad fรถr att deklarera en boolesk variabel som kallas "status". Variabeln tilldelas sedan vรคrdet sant/falskt.
- Slutligen anvรคnds funktionen console.write fรถr att visa det booleska vรคrdet fรถr konsolen.
Om ovanstรฅende kod matas in korrekt och programmet kรถrs framgรฅngsrikt, kommer utdata att visas.
Produktion:
Frรฅn utgรฅngen kan du tydligt se att den booleska variabeln som รคr lika med true visades i konsolen
4) Strรคng
En strรคngdatatyp anvรคnds fรถr att arbeta med strรคngvรคrden. I C# betecknas datatypen med nyckelordet 'String'. Nedan รคr ett exempel pรฅ denna datatyp.
I vรฅrt exempel kommer vi att definiera en strรคngvariabel som kallas 'meddelande'. Vi kommer sedan att tilldela variabeln ett strรคngvรคrde och sedan visa det dรคrefter.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class program { static void Main(string[] args) { String message="Hello"; Console.Write(message); Console.ReadKey(); } } }
Code Fรถrklaring:-
- Strรคngdatatypen รคr specificerad fรถr att deklarera en strรคngvariabel som kallas meddelande. Variabeln tilldelas sedan vรคrdet "Hello".
- Slutligen anvรคnds console.write-funktionen fรถr att visa strรคngvรคrdet fรถr konsolen.
Om ovanstรฅende kod matas in korrekt och programmet kรถrs framgรฅngsrikt, kommer utdata att visas.
Produktion:
Frรฅn utgรฅngen kan du tydligt se att String-variabeln som heter meddelande visades i konsolen
Komplett lista รถver C#-datatyper
De fyra exemplen ovan tรคcker de vanligaste typerna, men C# tillhandahรฅller en komplett uppsรคttning inbyggda vรคrdedatatyper. Varje typ reserverar en fast mรคngd minne och accepterar ett specifikt vรคrdeintervall, sรฅ att vรคlja den minsta typen som sรคkert passar dina data hรฅller ett program effektivt.
| Data typ | Storlek | Rรคckvidd / Description |
|---|---|---|
| bitgrupp | 1 byte | 0 till 255 |
| kort | 2 bitgrupper | -32,768 till 32,767 |
| int (Int32) | 4 bitgrupper | -2,147,483,648 till 2,147,483,647 |
| lรฅng | 8 bitgrupper | Mycket stora heltal (ยฑ9.2 kvintiljoner) |
| flyta | 4 bitgrupper | Decimaltal med ungefรคr 6โ7 siffrors precision |
| dubbla | 8 bitgrupper | Decimaltal med ungefรคr 15โ16 siffrors precision |
| decimal- | 16 bitgrupper | Hรถgprecisionsdecimaler (28โ29 siffror) fรถr pengar |
| rรถding | 2 bitgrupper | Ett enda Unicode-tecken |
| bool | 1 byte | sant eller falskt |
Vid sidan av dessa vรคrdetyper รคr strรคngtypen den mest anvรคnda referenstypen och lagrar en sekvens av tecken av valfri lรคngd. Att vรคlja en lรคmplig typ fรถrhindrar รถverfyllnadsfel och onรถdig minnesanvรคndning.
Vรคrdetyper kontra referenstyper i C#
Varje C#-datatyp faller inom en av tvรฅ grupper: vรคrdetyper och referenstyper. Denna distinktion styr hur C# lagrar data och hur en variabel beter sig nรคr du kopierar den eller skickar den till en metod.
- Vรคrdetyper: Dessa lagrar sjรคlva datan direkt, vanligtvis pรฅ stacken. int, double, bool, char, upprรคkning, och struct รคr vรคrdetyper. Att tilldela en variabel till en annan kopierar vรคrdet, sรฅ de tvรฅ variablerna fรถrblir oberoende.
- Referenstyper: Dessa lagrar en referens (en minnesadress) som pekar pรฅ data pรฅ heapen. string, object, arrays och class instances รคr referenstyper. Att kopiera en referensvariabel kopierar bara adressen, sรฅ bรฅda variablerna delar samma objekt.
En variabel av vรคrdetyp kan aldrig vara null eftersom den alltid innehรฅller ett vรคrde, medan en oinitialiserad referenstyp har standardvรคrdet null. Att fรถrstรฅ denna skillnad hjรคlper dig att fรถrutsรคga hur dataรคndringar flรถdar genom ett program.
Typkonvertering i C#
C# behรถver ofta flytta ett vรคrde frรฅn en datatyp till en annan, till exempel genom att omvandla anvรคndarinmatning, som alltid รคr text, till ett tal. Denna process kallas typkonvertering och sker pรฅ tre huvudsakliga sรคtt.
- Implicit omvandling: Kompilatorn konverterar automatiskt nรคr det inte finns nรฅgon risk fรถr datafรถrlust, till exempel nรคr ett heltal tilldelas en double. Ingen speciell syntax krรคvs.
- Explicit konvertering (casting): Du placerar mรฅltypen inom parentes, till exempel (int)myDoubleCasting kan fรถrlora data โ att konvertera en dubbel till ett heltal tar bort decimaldelen โ sรฅ du accepterar risken medvetet.
- Hjรคlpmetoder: Klassen Convert (Convert.ToInt32) och varje typs Parse-metod (int.Parse) omvandlar strรคngar till tal, medan ToString omvandlar vรคrden tillbaka till lรคsbar text.
Att vรคlja rรคtt konvertering hรฅller data korrekta och fรถrhindrar kรถrtidsfel nรคr typerna pรฅ varje sida av en tilldelning inte matchar.








