c type casting explicit implicit data conversion with example
Преливање типова података у Ц # са примерима: Овај водич објашњава експлицитну и имплицитну конверзију, претвара у низ и конверзију типова података помоћу класа помоћника:
Типови података и променљиве у Ц # су детаљно објашњени у нашем претходном водичу.
Сазнали смо како се један тип података може претворити у други тип података помоћу ливења типова. Представљање типова је подељено на два дела, тј. Имплицитна и експлицитна конверзија.
Хајде да дубље истражимо Цастинг типа Ц # у овом упутству.
=> Овде потражите Једноставни водич за обуку за Ц #
То је имплицитна конверзија када се мањи тип података претвара у већи тип података или изведена класа у основну класу.
С друге стране, конверзија у супротном смеру позната је као експлицитна конверзија. Потребан му је оператер за пребацивање да претвори виши тип података у мањи тип података. Ова врста конверзије није сигурна за тип и може резултирати губитком података.
Шта ћете научити:
како исписати садржај низа јава
Преливање типа података у Ц #
У овом упутству детаљно ћемо размотрити како се један тип података може претворити у други тип података. Ц # је статички тип током компајлирања, што значи да се након декларације променљиве не може користити за чување вредности било ког другог типа података.
Међутим, ово се може превазићи претварањем тог типа у променљиви тип.
Покушајмо да претворимо вредност низа у цео број.
int a; a = 'some random string';
Ако ово компајлирамо, испашће грешка која каже: „Не могу имплицитно претворити тип„ стринг “у„ инт “.“
Типови података могу се даље делити на основу типова података.
имплементација бинарног стабла претраживања ц ++
- Примитивно
- Непримитивно
Примитивни типови података су унапред дефинисани, док су непримитивни типови података кориснички дефинисани. Типови података попут бите, инт, схорт, флоат, лонг, цхар, боол итд. Називају се примитивним типовима података. Непримитивни типови података укључују класу, набрајање, низ, делегат итд.
У овом упутству ћемо размотрити различите методе које нуди Ц # за слање типова.
Имплицитна конверзија
Имплицитна конверзија је најједноставнија врста конверзије. Ова врста конверзије је сигурна за тип и током конверзије се не дешава губитак података. Ове конверзије се баве претварањем изведене класе у основну класу.
На пример, можемо директно да користимо имплицитну конверзију ако вредност коју треба сачувати у другој променљивој може да стане директно без губитка података. Рецимо да имамо вредност „цео број“ и желимо да је пренесемо у вредност „лонг“.
int i = 75; long j = i;
Експлицитна конверзија
У имплицитној конверзији, видели смо да изведену класу можемо директно претворити у основну класу без губитка података, али у случају да постоји могућност губитка података, компајлер ће захтевати извођење експлицитне конверзије.
Експлицитна конверзија или пребацивање је процес преношења података компајлеру који програм покушава да изврши конверзију знајући о могућем губитку података.
На пример, ако већу нумеричку вредност претварамо у нижу.
double d = 75.25; int i; i = (int)d;
Ако одштампате „и“, видећете да ће отиснути „75“. Сви подаци након децималног броја ће се изгубити у конверзији.
Конверзија помоћу различитих класа помоћника
Да бисмо претворили између различитих некомпатибилних типова, као што је претварање низа у број или бајтни низ у целобројне или чак хексадецималне низове, у друге нумеричке типове, потребна нам је друга помоћна класа, јер директна конверзија није могућа.
Тип података може се претворити у други тип података помоћу метода присутних у класи претворбе или помоћу методе ТриПарсе која је доступна за различите бројевне типове. ТриПарсе је кориснији ако претварамо низ у број. Прилично је једноставно и ефикасно.
int number = Int32.Parse(“123”);
Овде смо конвертовали низ у цео број користећи парсе.
Погледајмо још један метод конверзије, а то је Цонверт метода.
Статичке методе присутне у Претвори класу су врло корисни за претварање у основни тип података или обрнуто. Неки од подржаних типова података су Цхар, Боолеан, Инт32, инт64, Доубле, Децимал, Стринг, Инт16 итд. Класа Цонверт такође подржава методе за друге конверзије.
Претвори у низ
Цонверт.ТоСтринг метода претвара тип података у низ. У пример у наставку претварамо целобројни тип података у низ података.
како отворити јнлп датотеку виндовс 10
int number = 75; string s = Convert.ToString(number);
ИнвалидЦастЕкцептион
Понекад је могуће да компајлер можда не разуме да ли је операција изведена за претварање једног типа у другу валидна или не. То доводи до неуспеха компајлера током извршавања. Једном када конверзија типа не успе, избациће Неважећи изузетак.
ИнвалидЦастЕкцептион се баца кад год експлицитна имплементација или конверзија типа не подржавају оба типа података који се користе за конверзију.
Закључак
У овом упутству научили смо типове конверзије и како извршити конверзију између различитих типова података. Имплицитна конверзија је конверзија у којој се изведена класа претвара у основну класу попут инт у флоат тип.
Експлицитна конверзија је конверзија која може проузроковати губитак података. Експлицитна конверзија претвара основну класу у изведену класу. Можда ћемо морати извршити конверзију на различитим другим типовима података, да бисмо то урадили, користећи помоћну класу. Класе помоћника као што су „Парсе“ и „ЦонвертТо“ нуде разне начине за претварање једног типа података у други.
Такође смо сазнали за изузетак који ће компајлер избацити када не разуме конверзију између два типа.
=> Овде потражите Једноставни водич за обуку за Ц #
Препоручено читање
- Врсте података и променљиве Ц # са примерима
- Типови података Ц ++
- Претворбе типа у Ц ++
- Рударство података: процес, технике и главни проблеми у анализи података
- Дата Март Туториал - Врсте, примери и примена Дата Март
- Врсте тестирања миграције: Са сценаријима испитивања за сваки тип
- 10+ најбољих алата за прикупљање података са стратегијама прикупљања података
- Карактеристика базена података у ИБМ Ратионал Куалити Манагер за управљање тест подацима