Найти тему
303 подписчика

💬 Продвижении типов в выражениях


Сегодня поговорим о продвижении типов в выражениях в Java. Преобразование типов может выполняться в выражениях. Это происходит, когда промежуточное значение выходит за пределы диапазона значений любого из операндов.

🔸 Результат выражения (а * b) может выйти за пределы диапазона допустимых значений типа byte. Для подобных ситуаций при вычислении выражений тип каждого операнда byte, short или char автоматически продвигается к типу int. Вычисление промежуточного выражения (а * b) в данном случае выполняется не с типом byte, а с помощью значений типа int. В результате получим 1500, несмотря на то, что оба операнда объявлены с типом byte.

🔸 Иногда автоматическое продвижение типов может приводить к ошибкам. Следующий код кажется правильным, но будет вызывать ошибку компиляции. В подобных случаях, следует использовать явное приведение типов. В круглых скобках мы указываем нужный тип данных byte перед выражением a * 2.

✨ Еще у меня есть курсы для QA
💬 Продвижении типов в выражениях  Сегодня поговорим о продвижении типов в выражениях в Java. Преобразование типов может выполняться в выражениях.
Около минуты