Приведение (T)
Приведение (T) - это оператор явного преобразования типов.
Он позволяет привести значение одного типа к другому типу.
В качестве параметра оператор принимает целевой тип данных,
который указывается в круглых скобках перед значением или переменной.
Приведение бывает расширяющим (без потери данных) и сужающим
(с возможной потерей данных или точности).
Синтаксис
(T) value
Пример
Давайте выполним сужающее приведение от double к int.
Дробная часть при этом отбрасывается:
public class Main
{
public static void main(String[] args)
{
double num = 12.34;
int res = (int) num;
System.out.println(res);
}
}
Результат выполнения кода:
12
Пример
Давайте выполним расширяющее приведение от int к double.
Данные при этом не теряются:
public class Main
{
public static void main(String[] args)
{
int num = 5;
double res = (double) num;
System.out.println(res);
}
}
Результат выполнения кода:
5.0
Пример
Давайте выполним сужающее приведение от long к int
с потерей старших битов:
public class Main
{
public static void main(String[] args)
{
long num = 1234567890123L;
int res = (int) num;
System.out.println(res);
}
}
Результат выполнения кода:
1912277051
Пример
Давайте выполним приведение от double к float.
Такое приведение является сужающим и требует явного указания типа:
public class Main
{
public static void main(String[] args)
{
double num = 12.34;
float res = (float) num;
System.out.println(res);
}
}
Результат выполнения кода:
12.34
Пример
Давайте выполним приведение от int к char.
Число при этом превращается в символ согласно таблице Unicode:
public class Main
{
public static void main(String[] args)
{
int num = 65;
char res = (char) num;
System.out.println(res);
}
}
Результат выполнения кода:
"A"