انواع داده در سی شارپ

آموزش انواع داده در سی شارپ

آنچه در این مقاله می‌خوانید

در آموزش انواع داده در سی شارپ باید به این نکته توجه داشت که داده‌ها و متغیرها در این زبان انواع مختلفی داشته و نوع آنها قبل از تعریف یک متغیر باید به طور دقیق تعیین شود. یک دسته‌بندی کلی برای داده‌ها در آموزش برنامه نویسی سی شارپ تقسیم آنها به دو دسته داده‌های مقداری و داده‌های رفرنسی است. داده‌های مقداری در واقع متغیرهایی را نمایش می‌دهند که مقداری در آنها ذخیره شده و از طرف دیگر داده‌های رفرنسی متغیرهایی هستند که به یک شی از کلاس اشاره دارند.

هریک از این دو نوع داده دارای کاربردهای خاصی هستند. داده‌های مقداری خود از انواع مختلفی تشکیل شده‌اند که از جمله آنها می‌توان به داده‌های عددی، داده‌های Boolean، داده‌های رشته‌ای و … اشاره کرد. از طرف دیگر داده‌های رفرنسی نیز معمولا به کلاسی اشاره دارند که یا از قبل ساخته شده یا توسط کاربر ایجاد می‌شود. خود این داده‌ها نیز به دو دسته داده‌های تعریف شده توسط کاربر و داده‌های از پیش تعریف شده تقسیم می‌شوند. در بوت کمپ سی شارپ نیز شما می‌توانید خیلی راحت با انواع داده‌ها و متغیرها در این زبان آشنا شوید. مزیت اصلی بوت کمپ برنامه نویسی سی شارپ این است که تمامی انواع داده‌ها را در پروژه‌های واقعی به شما معرفی کرده و کاربردهای آنها را نیز توضیح می‌دهد

داده‌های مقداری در زبان برنامه‌نویسی سی شارپ

جدول انواع داده در سی شارپ که در ادامه آمده است تمامی متغیرها و داده‌های مقداری را به طور مختصر توضیح می‌دهد:

نوع داده بازه مقداری
Byte 0 تا 255
Sbyte -128 تا 127
Short -32,768 تا 32,767
Ushort 0 تا 65,535
Int -2,147,483,648 تا 2,147,483,647
Uint 0 تا 4,294,967,295
Long -9,223,372,036,854,755,808
تا9,223,372,036,854,755,807
Ulong 0 تا
18,446,744,073,709,551,615
Float -3.402823e38 تا
3.402823e38
double -1. 1.79769313486232e308
تا
1.79769313486232e308
Decimal (+ or -)1.0 x 10e-28
تا
7.9 x 10e28
Char هر کاراکتر معتبری
Bool True یا false
Object به یک شی از یک کلاس اشاره دارد.
String هر دنباله‌ای از کاراکترها
DateTime 0:00:00 am 1/1/01

تا

11:59:59 pm 12/31/999

داده‌های عددی در سی شارپ و کاربردهای آن‌ها

داده‌های عددی در سی شارپ زمانی استفاده می‌شوند که قصد داشته باشید یک مقدار عددی را در متغیری ذخیره کرده و از آن استفاده کنید. وقتی اعداد شما کوچک هستند داده‌هایی از نوع byte و short یا sbyte و ushort گزینه بهتری برای استفاده هستند که فضای کمتری در حافظه به خود اختصاص می‌دهند. وقتی که داده‌های شما از نوع عدد صحیح بوده و اعداد بزرگ‌تری هستند بهتر است از نوع داده‌ای int یا uInt بهترین گزینه خواهند بود. زمانی که اعداد صحیح شما خیلی بزرگ‌تر می‌شوند نیز نوع داده‌ای Long یا Ulong گزینه معقول‌تری برای استفاده هستند.

پس از آشنایی با انواع داده های صحیح در سی شارپ باید بدانید که داده‌های اعشاری نیز در این زبان قابل استفاده هستند. این دسته از داده‌ها شامل float و double هستند. اگر داده‌های اعشاری شما تعداد ارقام کوچک‌تری دارند بهتر است از float استفاده کرده و در صورتی که داده‌های اعشاری بزرگ‌تر هستند نوع داده‌ای double گزینه بهتری برای استفاده خواهد بود. بهتر است برای یادگیری بهتر مفاهیم برنامه نویسی سی شارپ، آموزش شی گرایی در سی شارپ را هم ببینید.

در نهایت گاهی اوقات در آموزش برنامه نویسی به زبان سی شارپ ممکن است بخواهید روی پروژه‌های علمی کار کرده و نیازمند متغیرهایی باشید که مقادیر عددی علمی را در خود ذخیره کنند. نوع داده‌ای Decimal در این‌جا به کمک شما آمده و می‌توانید داده‌های خود را در متغیرهایی از نوع Decimal ذخیره کنید.

در ادامه می‌توانید سینتکس مربوط به تعریف متغیرها با برخی از انواع داده‌های عددی که توضیح دادیم را بررسی کنید:

int myNum = 100000;

long myNum = 15000000000L;

float myNum = 5.75F;

double myNum = 19.99D;

float f1 = 35e3F;

double d1 = 12E4D;

برنامه نویسی سی شارپ

داده‌های رشته‌ای و کاراکتری در سی شارپ

کاراکترها از جمله مهم‌ترین انواع داده‌ها در زبان برنامه‌نویسی سی شارپ به شمار می‌آیند. وقتی که قصد دارید یک کاراکتر را درون متغیری ذخیره کرده و بعدا به آن دسترسی پیدا کنید نوع داده‌ای Char به شما کمک می‌کند تا بتوانید چنین متغیری را تعریف کنید. برای تعریف یک کاراکتر در زبان سی شارپ به شکل زیر عمل خواهیم کرد:

char myGrade = ‘B’;

حال ممکن است قصد داشته باشید که دنباله‌ای از کاراکترها را تولید کنید که به آنها رشته گفته می‌شود. در این شرایط می‌توانید از نوع داده‌ای String برای این کار استفاده کنید. قطعه کد زیر را بررسی کنید:

string greeting = “Hello World”;

به این ترتیب رشته Hello World داخل متغیری به نام greeting ذخیره شده و شما بعدها می‌توانید به این مقدار دسترسی پیدا کنید.

داده‌های دودویی یا bool

فرض کنید که در یک پروژه شما نیازمند این هستید که بررسی کنید آیا شخصی دسترسی به بخشی از پایگاه داده را دارد یا خیر؟ طبیعی است که پاسخ این سوال بله یا خیر خواهد بود. وقتی که شما نیاز دارید متغیری را تعریف کنید که تنها مقادیر آن بله یا خیر هستند بهترین گزینه برای شما متغیر از نوع bool خواهد بود. این نوع متغیرها یا انواع داده‌ای دو مقدار true به معنای درست و false به معنای غلط را دریافت می‌کنند. نحوه استفاده از این نوع متغیرها به شکل زیر خواهد بود:

bool isCSharpFun = true;

bool isFishTasty = false;

فراموش نکنید که تبدیل انواع داده در سی شارپ نیز امکان‌پذیر است. برای این کار اگر داده فعلی شما ساده‌تر از داده‌ای باشد که قصد دارید در متغیر جدید قرار دهید می‌توانید به طور مستقیم و به شکل زیر این کار را انجام دهید:

int i = 345;

float f = i;

اما اگر داده فعلی شما پیچیده‌تر از داده‌ متغیر جدید باشد نیازمند casting خواهید بود که به شکل زیر قابل انجام است:

public static void Main()

{

int i = 100;

uint u = (uint) i;

Console.Write(i);

}

داده های مشخص

داده‌های مشخص، یکی از انواع داده ها در سی شارپ هستند که در واقع از پیش داخل این زبان برنامه‌نویسی تعریف شده‌اند و شما می‌توانید به‌راحتی به آنها دسترسی پیدا کنید. از جمله مهم‌ترین داده‌های مشخص در زبان برنامه‌نویسی سی شارپ، عبارت‌اند از:

1- Bool: این نوع داده‌ها، با دو مقدار true و false مقداردهی می‌شوند و می‌توانند یک حالت 0 و 1 را برای شما ایجاد کنند.

2- float: این یک نوع داده عددی است که امکان ذخیره‌سازی انواع اعداد اعشاری را برای شما فراهم می‌کند.

3- int: این نوع داده، برای ذخیره‌سازی و مقداردهی متغیرهایی کاربرد دارد که قصد دارید یک عدد صحیح را در آنها ذخیره کنید.

4- char: وقتی که قصد دارید یک کاراکتر را درون متغیری ذخیره کنید، می‌توانید از این نوع داده در سی شارپ استفاده کنید.

داده های ارجاعی در متغیرهای سی شارپ

داده‌های ارجاعی، یکی از پرکاربردترین انواع داده‌هایی هستند که در زبان برنامه‌نویسی سی شارپ استفاده شده و در واقع متغیرهایی که این نوع داده‌ها را دریافت می‌کنند، اطلاعات را مستقیما در خود ذخیره نمی‌کنند، بلکه این متغیرها، محلی از حافظه که مقدار مربوطه در آن ذخیره شده است را در خود نگهداری می‌کنند. کاربرد اصلی این نوع داده‌ها در زبان سی شارپ، زمانی است که شما قصد دارید چند نوع داده‌ مختلف را به‌عنوان یک نوع داده‌ای جدید در سی شارپ ذخیره کرده و تمامی آنها را به‌صورت یکجا نگهداری کرده و به آنها دسترسی پیدا کنید.

برای مثال، Class یکی از انواع داده‌های ارجاعی است که شما می‌توانید در آن انواع ویژگی‌ها و متدها را تعریف کرده و هر شی جدیدی که از یک کلاس ایجاد کنید، در یک متغیر به‌صورت ارجاعی ذخیره خواهد شد. داده‌های دیگری همچون آرایه‌ها، اینترفیس‌ها و همین‌طور Delegateها در زبان برنامه‌نویسی سی شارپ نیز از نوع داده‌های ارجاعی به شمار می‌آیند.

نوع داده‌ای مقداری ساخته شده توسط کاربر

در بخش قبلی درباره داده‌های مقداری متغیرها در سی شارپ صحبت کردیم. توجه داشته باشید که تمامی موارد بیان شده داده‌هایی هستند که به‌صورت پیش‌فرض در زبان برنامه‌نویسی سی شارپ ایجاد شده‌اند. حال گاهی اوقات ممکن است خود کاربر بخواهد داده‌های مقداری را در زبان برنامه‌نویسی سی شارپ ایجاد کند. این امکان نیز وجود دارد که در این بخش از آموزش انواع داده در سی شارپ درباره آن صحبت خواهیم کرد.

یکی از این نوع داده‌ای، انواع ساختمان داده در سی شارپ به شمار می‌آیند. برای مثال شما می‌توانید آرایه‌ها را در زبان برنامه‌نویسی سی شارپ ایجاد کنید. ساختمان‌های داده در واقع نوعی متغیر هستند که توسط کاربر تعریف می‌شوند و نیازی به وراثت یا رفرنس دادن ندارند. زمانی که یک ساختار به متغیری جدید اختصاص داده می‌شود در اصل یک کپی از آن ایجاد خواهد شد. نباید فراموش کرد که ساختمان داده‌ها خود دارای فیلدها، ویژگی‌ها و متدهای مخصوص به خود هستند. قطعه کد زیر را مشاهده کنید:

//C# program to demonstrate  the structure

using System;

// Define a struct representing a Point

struct Point

{

// Data members (fields) of the structure

public int X;

public int Y;

// Constructor to initialize the Point

public Point(int x, int y)

{

X = x;

Y = y;

}

// Function member (method) to print the Point’s coordinates

public void PrintCoordinates()

{

Console.WriteLine($”X: {X}, Y: {Y}”);

}

}

class Program

{

static void Main()

{

// Create a Point object using the default constructor

Point point1 = new Point();

// Set the X and Y coordinates using the fields

point1.X = 10;

point1.Y = 20;

// Print the coordinates of point1

Console.WriteLine(“Coordinates of point1:”);

point1.PrintCoordinates();

// Create a Point object using the parameterized constructor

Point point2 = new Point(5, 15);

// Print the coordinates of point2

Console.WriteLine(“Coordinates of point2:”);

point2.PrintCoordinates();

}

}

خروجی این قطعه کد به شکل زیر خواهد بود:

Coordinates of point1:

X: 10, Y: 20

Coordinates of point2:

X: 5, Y: 15

در ادامه نوع داده‌ای Enumeration وجود دارد که امکان دسترسی به مجموعه‌ای از ثابت‌ها را در زبان برنامه‌نویسی سی شارپ برای شما فراهم می‌کند. وقتی که چند گزینه در پروژه خود دارید که قصد دارید آنها را در یک مجموعه تعریف کنید امکان استفاده از نوع داده‌ای Enumeration برای شما فراهم می‌شود. نحوه استفاده از آن به شکل زیر خواهد بود:

//C# program to illustrate the enums

using System;

public class Program

{

// Define an enum for days of the week

public enum DaysOfWeek

{

Monday,

Tuesday,

Wednesday,

Thursday,

Friday,

Saturday,

Sunday

}

public static void Main()

{

// Using enums in C#

// Example 1: Assigning an enum value to a variable

DaysOfWeek today = DaysOfWeek.Wednesday;

Console.WriteLine(“Today is: ” + today);

// Example 2: Comparing enum values

if (today == DaysOfWeek.Saturday || today == DaysOfWeek.Sunday)

{

Console.WriteLine(“It’s the weekend!”);

}

else

{

Console.WriteLine(“It’s a weekday.”);

}

// Example 3: Enum iteration

Console.WriteLine(“\nAll days of the week:”);

foreach (DaysOfWeek day in Enum.GetValues(typeof(DaysOfWeek)))

{

Console.WriteLine(day);

}

}

}

خروجی قطعه کد بالا به شکل زیر است:

Today is: Wednesday

It’s a weekday.

All days of the week:

Monday

Tuesday

Wednesday

Thursday

Friday

Saturday

Sunday

پیشنهاد مقاله: انواع داده Data Types در پایتون

نوع داده رفرنسی

این نوع داده‌ها در واقع از متغیرهایی تشکیل می‌شوند که یک مقدار واقعی در آنها ذخیره نمی‌شود؛ بلکه حاوی ارجاع به دیگر متغیرها خواهند بود و به همین علت نیز داده‌های رفرنسی نامیده می‌شوند. زمانی که یکی از داده‌هایی که به آن رفرنس داده شده است تغییر می‌کند، متغیر دیگر به طور خودکار این تغییر را لحاظ خواهد کرد و این اصلی‌ترین مزیتی است که نوع داده‌های رفرنسی ارائه می‌دهند.

در آموزش انواع داده در سی شارپ باید به این موضوع توجه داشت که دو نوع داده رفرنسی در زبان سی شارپ وجود دارند که عبارت‌اند از:

  • داده‌هایی که از پیش تعریف شده‌اند: مانند داده‌های رفرنسی رشته‌ای
  • داده‌های تعریف شده توسط کاربر: مانند اشیائی که در کلاس‌ها ساخته می‌شوند یا نمونه‌هایی که از interfaceها در زبان برنامه‌نویسی سی شارپ ایجاد می‌شوند.

نوع داده‌ای Object

این دسته از انواع داده های ارجاعی در متغیرهای سی شارپ به‌صورت پیش‌فرض در زبان برنامه‌نویسی سی شارپ ایجاد شده‌اند. آن‌ها اصلی‌ترین نوع داده در زبان برنامه‌نویسی سی شارپ هستند که سایر انواع داده از روی آن به ارث برده شده‌اند. قطعه کد زیر را بررسی کنید تا بیاموزید که چگونه می‌توانید از این نوع داده‌ای استفاده کنید:

//C# program to demonstrate  the object data type

using System;

class Program

{

static void Main()

{

// Create variables of object type

object obj1 = 42; // An int value

object obj2 = “Hello, world!”; // A string value

object obj3 = 3.14; // A double value

// Create an array of objects to store different data types

object[] myObjects = { obj1, obj2, obj3 };

// Access elements and perform type-specific operations

foreach (object obj in myObjects)

{

if (obj is int)

{

int intValue = (int)obj;

Console.WriteLine(“Integer Value: ” + intValue);

}

else if (obj is a string)

{

string stringValue = (string)obj;

Console.WriteLine(“String Value: ” + stringValue);

}

else if (obj is double)

{

double doubleValue = (double)obj;

Console.WriteLine(“Double Value: ” + doubleValue);

}

else

{

Console.WriteLine(“Unknown data type!”);

}

}

}

}

خروجی کد بالا به شکل زیر است:

Integer Value: 42

String Value: Hello, world!

Double Value: 3.14

نوع داده‌ای داینامیک در سی شارپ

این نوع داده‌ای نیز از نوع رفرنس به شمار می‌آید که امکانی را در اختیار برنامه‌نویسان سی شارپ قرار می‌دهد تا بتوانند در یک متغیر هر نوع داده‌ای که مدنظر دارند را استفاده کنند. برای مثال قطعه کد زیر را مشاهده کنید:

//C# program to demonstrate the dynamic data type

using System;

class Program{

static void Main()

{

// Declare a dynamic type variable

dynamic dynamicVar;

// Assign an int value to the dynamic variable

dynamicVar = 42;

Console.WriteLine(“Dynamic Variable as int: ” + dynamicVar);

// Assign a string value to the dynamic variable

dynamicVar = “Hello, world!”;

Console.WriteLine(“Dynamic Variable as string: ” + dynamicVar);

// Assign a double value to the dynamic variable

dynamicVar = 3.14;

Console.WriteLine(“Dynamic Variable as double: ” + dynamicVar);

// Perform dynamic operations

dynamic result = AddNumbers(5, 10);

Console.WriteLine(“Dynamic Operation: ” + result);

}

// Dynamic method that adds two numbers

static dynamic AddNumbers(dynamic a, dynamic b)

{

return a + b;

}

}

خروجی کد بالا به شکل زیر خواهد بود:

Dynamic Variable as int: 42

Dynamic Variable as a string: Hello, world!

Dynamic Variable as double: 3.14

Dynamic Operation: 15

سخن پایانی

آموزش انواع داده در سی شارپ به شما کمک می‌کند تا بتوانید داده‌های مختلف در این زبان را بشناسید و از آنها به شکلی درست استفاده کنید. در بوت کمپ آموزش برنامه نویسی سی شارپ تجربه عملی کار با داده ها را  کسب کنید

فرانت‌اند چیست؟ فرانت‌اند کار کیست؟
فرانت‌اند چیست؟ فرانت‌اند کار کیست؟
حتماً شما هم از کسانی که همیشه رو بازی می‌کنند و صادق‌اند،…
برنامه نویسی اپلیکیشن
برنامه نویسی اپلیکیشن
زبان‌های مخصوص برنامه نویسی اپلیکیشن، به طور کلی به دو دسته زبان‌های…
گیت هاب github چیست؟
گیت هاب github چیست؟
گیت، یک سیستم کنترل ورژن اوپن سورس یا VCS (مخفف Version Control…
فرانت‌اند چیست؟ فرانت‌اند کار کیست؟
فرانت‌اند چیست؟ فرانت‌اند کار کیست؟
حتماً شما هم از کسانی که همیشه رو بازی می‌کنند و صادق‌اند،…
برنامه نویسی اپلیکیشن
برنامه نویسی اپلیکیشن
زبان‌های مخصوص برنامه نویسی اپلیکیشن، به طور کلی به دو دسته زبان‌های…

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *