Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Базове Приведення Типів | Робота з Типами Даних
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Основи C#

bookБазове Приведення Типів

Перетворення типів — це процес зміни значення з одного типу даних на інший. Це часто можливо між типами, які представляють числа. Наприклад, можна перетворити float у int і навпаки. Однак, перетворення string безпосередньо у int не має логічного сенсу і неможливе без додаткових дій.

Існують два види перетворення типів: неявне перетворення типів та явне перетворення типів.

Неявне перетворення типів відбувається автоматично, коли значення змінюється з одного типу на інший, зазвичай з меншого на більший тип даних.

main.cs

main.cs

copy
1234
int val1 = 10; long val2 = val1; // int is automatically converted to long float val3 = var1; // int is automatically converted to float double var4 = var1; // int is automatically converted to double

Неявне перетворення типів відбувається автоматично, коли менший тип даних перетворюється у більший. Розмір типу даних визначається тим, скільки даних він може зберігати, вимірюється у бітах. Наприклад, int може містити 32 біти, а long — 64 біти, тому перетворення int у long відбувається автоматично. Аналогічно, float можна перетворити у double без жодних проблем.

Ось перелік типів даних, впорядкованих від найменшого до найбільшого: char -> int -> long -> float -> double

Явне перетворення типів — це коли ви, як програміст, вказуєте комп'ютеру перетворити значення у інший тип даних. Це необхідно при перетворенні з більшого типу даних у менший, оскільки частина даних може бути втрачена. Наприклад, перетворення числа з плаваючою комою 3.14 у ціле число дає результат 3, втрачаючи дробову частину. Саме тому потрібно явно вказувати комп'ютеру виконати таке перетворення.

main.cs

main.cs

copy
123456789101112131415
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { float val1 = 3.14f; int val2 = val1; // Error: Cannot implicitly convert type 'float' to 'int'. An explicit conversion exists (are you missing a cast?) Console.WriteLine(val1); Console.WriteLine(val2); } } }

Щоб виправити помилку в наведеному вище коді, необхідно явно привести val1 до цілочисельного значення.

Синтаксис приведення виглядає так: (datatype) value, наприклад (int) 3.1415. У цьому випадку слід написати (int) val1:

main.cs

main.cs

copy
123456789101112131415
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { float val1 = 3.14f; int val2 = (int) val1; Console.WriteLine(val1); Console.WriteLine(val2); } } }
question mark

Які з наведених нижче тверджень є правильними?

Select all correct answers

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 11

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

bookБазове Приведення Типів

Свайпніть щоб показати меню

Перетворення типів — це процес зміни значення з одного типу даних на інший. Це часто можливо між типами, які представляють числа. Наприклад, можна перетворити float у int і навпаки. Однак, перетворення string безпосередньо у int не має логічного сенсу і неможливе без додаткових дій.

Існують два види перетворення типів: неявне перетворення типів та явне перетворення типів.

Неявне перетворення типів відбувається автоматично, коли значення змінюється з одного типу на інший, зазвичай з меншого на більший тип даних.

main.cs

main.cs

copy
1234
int val1 = 10; long val2 = val1; // int is automatically converted to long float val3 = var1; // int is automatically converted to float double var4 = var1; // int is automatically converted to double

Неявне перетворення типів відбувається автоматично, коли менший тип даних перетворюється у більший. Розмір типу даних визначається тим, скільки даних він може зберігати, вимірюється у бітах. Наприклад, int може містити 32 біти, а long — 64 біти, тому перетворення int у long відбувається автоматично. Аналогічно, float можна перетворити у double без жодних проблем.

Ось перелік типів даних, впорядкованих від найменшого до найбільшого: char -> int -> long -> float -> double

Явне перетворення типів — це коли ви, як програміст, вказуєте комп'ютеру перетворити значення у інший тип даних. Це необхідно при перетворенні з більшого типу даних у менший, оскільки частина даних може бути втрачена. Наприклад, перетворення числа з плаваючою комою 3.14 у ціле число дає результат 3, втрачаючи дробову частину. Саме тому потрібно явно вказувати комп'ютеру виконати таке перетворення.

main.cs

main.cs

copy
123456789101112131415
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { float val1 = 3.14f; int val2 = val1; // Error: Cannot implicitly convert type 'float' to 'int'. An explicit conversion exists (are you missing a cast?) Console.WriteLine(val1); Console.WriteLine(val2); } } }

Щоб виправити помилку в наведеному вище коді, необхідно явно привести val1 до цілочисельного значення.

Синтаксис приведення виглядає так: (datatype) value, наприклад (int) 3.1415. У цьому випадку слід написати (int) val1:

main.cs

main.cs

copy
123456789101112131415
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { float val1 = 3.14f; int val2 = (int) val1; Console.WriteLine(val1); Console.WriteLine(val2); } } }
question mark

Які з наведених нижче тверджень є правильними?

Select all correct answers

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 11
some-alt