Ce tipuri de date există în C#

Ce Tipuri De Date Exista In C



Tipurile de date sunt un aspect important al oricărui limbaj de programare, iar C# oferă mai multe tipuri de date care sunt utilizate pentru declararea variabilelor, definirea metodelor și crearea obiectelor. În acest articol, vom discuta despre diferitele tipuri de date din C# și subcategoriile acestora, inclusiv despre tipurile de date de valoare, referință și pointer.

Ce tipuri de date există în C#?

C# este a limbaj de programare puternic tastat , ceea ce înseamnă că toate variabilele trebuie declarate cu un anumit tip de date și au trei categorii principale de tipuri de date:







1: Tipuri de date valorice

Tipurile de date valorice sunt cele care își stochează valorile direct în memorie. Acestea sunt alocate pe stivă și adesea folosite pentru stocarea seturilor de date mai mici. Următoarele sunt subcategorii de tipuri de date valorice:



Tip de date numerice



Aceste tipuri de date sunt utilizate pentru stocarea valorilor numerice. Tipurile de date numerice sunt împărțite în mai multe subcategorii, cum ar fi zecimale, numere întregi și numere în virgulă mobilă:





  • numere întregi: Aceste tipuri de date sunt folosite pentru stocarea numerelor întregi, iar subcategorii de numere întregi includ sbyte, byte, short, ushort, int, uint, long și ulong. Intervalul de valori pe care le poate deține fiecare format de date întreg variază.
  • Numere în virgulă mobilă: Aceste tipuri de date sunt utilizate pentru stocarea numerelor zecimale, iar subcategoriile numerelor în virgulă mobilă includ float și double. Float poate stoca până la 7 cifre zecimale, în timp ce double poate stoca până la 15 cifre zecimale.
  • zecimale: Aceste tipuri de date sunt folosite pentru a stoca numere întregi zecimale foarte precise. Decimală poate stoca până la 28 de cifre zecimale.

Tipul de date boolean

Valorile booleene, care pot fi doar adevărate sau false, sunt stocate în această formă de date.



Tip de date caracter

Caracterele individuale sunt stocate folosind acest tip de date.

Exemplu

Următorul exemplu de cod ilustrează cum să utilizați tipul de date valoare în C#:

folosind System;

namespace ValueDataTypesExample
{
Programul clasei
{
gol static Principal ( şir [ ] argumente )
{
int myInt = 5 ;
float myFloat = 3,14f;
double myDouble = 3.14159265359 ;
bool myBool = Adevărat ;
char myChar = 'A' ;

Consolă.WriteLine ( 'Valoarea mea întreagă este: ' + myInt ) ;
Consolă.WriteLine ( 'Valoarea mea flotantă este: ' + myFloat ) ;
Consolă.WriteLine ( „Valoarea mea dublă este:” + myDouble ) ;
Consolă.WriteLine ( 'Valoarea mea booleană este: ' + myBool ) ;
Consolă.WriteLine ( 'Valoarea caracterului meu este: ' + myChar ) ;
}
}
}

În acest exemplu, am declarat și inițializat variabile de diferite tipuri de date, cum ar fi int, float, double, bool și char. Apoi am tipărit valorile acestor variabile folosind metoda Console.WriteLine, rezultatul acestui program va fi:

2: Tipuri de date de referință

Tipurile de date de referință sunt cele care stochează o referință la locația de memorie în care este stocată valoarea. Acestea sunt alocate pe heap și sunt utilizate de obicei pentru stocarea unor cantități mai mari de date. Următoarele sunt subcategorii de tipuri de date de referință:

Clasă

În C#, o clasă este un tip de referință care definește un plan pentru crearea obiectelor.

Şir

Acest tip de date de referință este utilizat pentru stocarea datelor text, șirul este un tip de referință, dar se comportă ca un tip de valoare în multe feluri.

Matrice

O colecție de valori de același tip poate fi stocată folosind acest tip de date. Matricele sunt tipuri de referință, dar se pot comporta și ca tipuri de valoare în anumite cazuri.

Interfață

O interfață definește un set de metode, proprietăți, evenimente și indexatori, fără a furniza detalii de implementare.

Delega

Un delegat vă permite să treceți o metodă ca argument unei alte metode și apoi să invocați acea metodă mai târziu prin intermediul delegatului.

Exemplu

Iată un exemplu de cod C# care arată cum se utilizează tipuri de date de referință :

folosind System;

Persoana de clasa
{
șir public Nume;
public int Vârsta;
}

Programul clasei
{
gol static Principal ( şir [ ] argumente )
{
Persoană persoană1 = Persoană nouă ( ) ;
persoana1.Nume = 'SE' ;
persoana1.Vârsta = douăzeci ;

Persoana persoana2 = persoana1;
persoana2.Vârsta = 30 ;

Consolă.WriteLine ( persoana1.Nume + ' este ' + persoană1.Vârsta + ' varsta.' ) ;
Consolă.WriteLine ( persoana2.Nume + ' este ' + persoană2.Vârsta + ' varsta.' ) ;
}
}

Clasa Person din acest exemplu are două câmpuri publice: Name, care este de tip șir și Age, care este de tip int. Apoi, facem o instanță nouă a clasei Person și o atribuim persoanei1 în metoda Main. Modificăm atributele Nume și Vârstă ale persoanei1.

Apoi, creăm o altă variabilă de referință person2 și îi atribuim valoarea person1. Schimbăm apoi proprietatea Age a person2 la 30.

În cele din urmă, tipărim numele și vârsta atât a persoanei1, cât și a persoanei2. Observați că, schimbând valoarea lui persoana2.Vârsta modifică și valoarea lui persoana1.Vârsta , deoarece ambele variabile se referă la aceeași obiect in memoria.

3: Tipuri de date pointer

Tipurile de date pointer sunt utilizate pentru stocarea adresei de memorie a unei alte variabile. Ele sunt utilizate în programarea la nivel scăzut, cum ar fi programarea la nivel de sistem sau dezvoltarea driverelor de dispozitiv . În C#, tipurile de date pointer nu sunt utilizate direct , dar pot fi folosite în blocuri de cod nesigure. Următoarea este subcategoria tipurilor de date pointer:

Tip de date pointer

Acest tip de date este utilizat pentru stocarea adresei de memorie a unei alte variabile.

Iată un exemplu care demonstrează utilizarea tipuri de date pointer în C#, deși necesită multă grijă:

folosind System;

Programul clasei {
static nesigur void Principal ( ) {
număr int = 10 ;
int * p = & pe unu;
Consolă.WriteLine ( $ „Valoarea num: {num}” ) ;
Consolă.WriteLine ( $ „Adresa num: {(long)p:X}” ) ;
Consolă.WriteLine ( $ „Valoarea num folosind indicatorul: {*p}” ) ;
Consola.ReadLine ( ) ;
}
}

În acest exemplu, folosim cuvântul cheie nesigur pentru a permite utilizarea pointerilor. Declarăm o variabilă de tip int și îi dăm valoarea 10. Apoi creăm o variabilă pointer pointer de tip int* și îi atribuim adresa de memorie a valorii folosind operatorul &.

Mai mult, accesăm apoi valoarea stocată în valoare prin dereferențierea pointerului folosind operatorul * și, de asemenea, putem modifica valoarea folosind același operator:

Notă: Utilizarea pointerilor în C# necesită o atenție și o atenție suplimentară pentru a evita problemele de gestionare a memoriei, așa că ar trebui să fie utilizate numai atunci când este necesar și cu precauție.

Concluzie

Există multe tipuri diferite de date disponibile în C# care pot fi utilizate pentru diferite sarcini. Cantități mai mici de date sunt stocate folosind tipuri de date valorice, iar cantități mai mari sunt stocate folosind tipuri de date de referință. Tipurile de date pointer sunt utilizate în programarea de nivel scăzut și nu sunt utilizate în mod obișnuit în C#.