Увод у типове података Ц #
Као што име сугерира, тип података је врста података коју ћете похранити у своју варијаблу. Тип података користи се да сугерира преводиоцу или интерпретатору коју врсту података ће обрадити и колико меморије ће бити потребно за те податке.
За Ек: инт је тип података који чува бројчану вредност и захтева четири бајта.
Пошто је Ц # снажно куцани језик, потребно је прогласити тип променљиве или константе пре употребе. Одговарајућа употреба типова података штеди меморију и побољшава перформансе апликације.
Синтакса:
datatype = value;
Примери типова података Ц #:
1. инт интВал = 55; У овом примјеру: инт је тип података, интВал је назив варијабле, 55 је вриједност.
2. цхар цхарВал = 'А';
3. стринг стрВал = "Поздрав свет!";
4. флоат флоатВал = 15.5ф;
5. боол боолВал = тачно;
Топ 3 Ц # типови података
Ц # типови података подељени су у три категорије:
1. Врсте вредности
- Директно чува вредност променљиве у меморији.
- Прихваћа и потписане и непотписане литерале.
- Постоје две врсте података о вредности у Ц #:
- Унапред дефинисани типови података као што су инт, цхар, боол итд.
- Кориснички дефинисани типови података као што су енум, струцт итд.
2. Референтне врсте
- Они чувају адресу променљиве, тј. Садрже референцу на променљиву.
- Ако се подаци промијене помоћу једне варијабле, друга варијабла аутоматски ће добити ажурирану вриједност.
- У Ц # постоје две врсте референтних врста података:
- Унапред дефинисани типови као што су Објект, Стринг
- Кориснички дефинисани типови као што су класа, интерфејс
3. Типови показивача
- Садрже меморијску адресу променљиве.
- Симболи који се користе у показивачу:
- & (амперсанд) - Оператор адреса, одређује адресу променљиве
- * (звездица) - Оператор са индиректним приступом, приступа вредности адресе
Примери различитих типова података
Следи неколико примера различитих типова података у Ц #,
Пример # 1: Неке врсте вредности
using System;
public class ValueDataTypes
(
public static void Main()
(
//int - 32-bit signed integer type
int i = 55;
//char - 16-bit Unicode character
char ch = 'A';
//short - 16-bit signed integer type
short s = 56;
//long - 64-bit signed integer type
long l = 5564;
//uint - 32-bit unsigned integer type
uint ui = 100;
//ushort - 16-bit unsigned integer type
ushort us = 80;
//ulong - 64-bit unsigned integer type
ulong ul = 3625573;
//double - 64-bit double precision floating point type
double d = 6.358674532;
//float - 32-bit single-precision floating point type
//float needs 'f' or 'F' as suffix
float f = 2.7330645f;
//decimal - 128-bit precise decimal values with 28-29 significant digits
//decimal needs 'm' or 'M' as suffix
decimal dec = 339.5m;
Console.WriteLine("Integer: " + i);
Console.WriteLine("Char: " + ch);
Console.WriteLine("Short: " + s);
Console.WriteLine("Long: " + l);
Console.WriteLine("Unsinged integer: " + ui);
Console.WriteLine("Unsinged short: " + us);
Console.WriteLine("Unsinged long: " + ul);
Console.WriteLine("Double: " + d);
Console.WriteLine("Float: " + f);
Console.WriteLine("Decimal: " + dec);
)
)
Излаз:
Пример бр. 2: Врста података Боол, Енум и Струцт
Структура је композитни тип који се користи за чување повезаних података са различитим типовима података. Енум се користи за додељивање имена интегралним константама.
using System;
public class BoolEnumStruct
(
//declaring enum
enum Days ( Saturday, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday );
//declaring structure
struct Student
(
public int Id;
public string FirstName;
public string LastName;
public Student(int id, string fname, string lname)
(
Id = id;
FirstName = fname;
LastName = lname;
)
)
public static void Main()
(
//boolean data type
bool flag = true;
if(flag)
(
Console.WriteLine("Bool value: "+flag);
Console.WriteLine();
)
//Accessing enum value for Friday
Console.WriteLine("Enumeration:");
Console.WriteLine(Days.Friday);
Console.WriteLine((int)Days.Friday);
Console.WriteLine();
//passing values to structure members using constructor
Student student = new Student(1, "Riya", "Sen");
Console.WriteLine("Structure Members:");
Console.WriteLine(student.Id);
Console.WriteLine(student.FirstName);
Console.WriteLine(student.LastName);
)
)
Излаз:
Пример # 3: Типови референтних података
using System;
public class StrObjDynamic
(
public static void Main()
(
string str = "C# ";
str += "Data Types";
Console.WriteLine("String: "+str);
Console.WriteLine();
//declaring object
object obj;
obj = 100;
Console.WriteLine("Object: "+obj);
//displaying type of object using GetType()
Console.WriteLine(obj.GetType());
Console.WriteLine();
//declaring dynamic variables
dynamic value1 = "Hello World!";
dynamic value2 = 5296;
dynamic value3 = 6.5;
//displaying actual type of dynamic variables using GetType()
Console.WriteLine("Dynamic:");
Console.WriteLine("Type of value1: (0)", value1.GetType().ToString());
Console.WriteLine("Type of value2: (0)", value2.GetType().ToString());
Console.WriteLine("Type of value3: (0)", value3.GetType().ToString());
)
)
Излаз:
Пример # 4: Интерфејс
Интерфејс може као својство имати својства, методе, догађаје и индексере. Садржи само изјаву својих чланова. Спровођење својих чланова обезбеђује класа која их имплицирано или експлицитно спроводи.
using System;
interface Shape
(
void rectangle();
)
public class Area : Shape
(
//implementing interface method
public void rectangle()
(
Console.WriteLine("Area of rectangle is Length * Breadth");
)
public static void Main(String() args)
(
Area area = new Area();
area.rectangle();
)
)
Излаз:
Пример # 5: Делегат
Делегат је објект који се односи на методу.
using System;
public class DelegateDemo
(
// Declaring delegate
public delegate void Sum(int a, int b);
public void SumVal(int a, int b)
(
Console.WriteLine(a +"+"+ b+ " = (0)", a + b);
)
public static void Main(String() args)
(
DelegateDemo delegateDemo = new DelegateDemo();
// Creating object of delegate
Sum sum = new Sum(delegateDemo.SumVal);
//Passing values to the method using delegate object
sum(100, 100);
)
)
Излаз:
Закључак
- Тип вредности се чува у снопу.
- Референтни тип се чува у хрпи.
- Када се тип вриједности претвара у референтни тип, то се назива бокс (имплицитни поступак претворбе) .
- Када се референтни тип претвори у тип вриједности, то се зове распакирање (експлицитни поступак претворбе) .
Препоручени чланци
Ово је водич за Ц # типове података. Овде смо расправљали о типовима Ц # заједно са различитим примерима типова података. Такође можете погледати следеће чланке да бисте сазнали више -
- Како приступити просторима с именима у Ц #?
- 2Д низови у Ц #
- Замјена у Ц #
- Објекти у Ц #
- Замјена у ПХП-у
- 3 различите врсте поља у ПХП-у (примери)
- Типови података ПХП-а са примерима