Имеет ли значение отливка типа java? Обязательно ли это знать на начальном этапе?
Да, это имеет значение. Без оператора приведения это было бы ошибкой времени компиляции. Проверьте эту главу JLS , чтобы узнать больше об этом.
Проще говоря, рассматривайте переменные как контейнеры, например, переменная типа int
имеет емкость 4
байт, а double
тип значения требует 8
байт. Следовательно, если вы попытаетесь присвоить тип значения double
переменной типа int
, он не подойдет. Оператор приведения делает это возможным, сокращая значение double
, чтобы оно соответствовало переменной int
. С другой стороны, если вы попытаетесь присвоить тип значения int
переменной типа double
, значение можно будет разместить без какого-либо преобразования.
public class Main {
public static void main(String[] args) {
double myDouble = 9.78;
int myInt = (int) myDouble;// Casting is required
int x = 100;
myDouble = 100;// Casting is not required
}
}