Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Базове Приведення Типів | Робота з Типами Даних
Основи 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 the correct answer

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

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

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

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

Запитати АІ

expand

Запитати АІ

ChatGPT

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

Awesome!

Completion rate improved to 1.59

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 the correct answer

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

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

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

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