221просмотров
17 декабря 2025 г.
Score: 243
Преобразование типов в Java Для начала вспомним, что вся "Вселенная типов" java состоит из:
1. примитивных типов (byte, short, int, long, char, float, double, boolean)
2. объектов Для чего это вообще нужно? Преобразование типов — это способ договориться между разными частями программы о формате данных.
В реальных программах данные:
- приходят извне (файлы, БД, сеть, пользователь)
- переезжают между слоями (API → сервис → БД)
- эволюционируют (сначала int, потом внезапно стало мало — нужен long)
Типы в Java — это контракт.
А приведение типов — это момент, когда ты берёшь ответственность на себя. Автоматическое преобразование: 1. byte и short. byte имеет меньший диапазон допустимых значений, чем short. То есть byte это как бы коробочка поменьше, а short - это коробочка побольше. И значит, мы можем byte вложить в short.
2. byte и int. byte имеет меньший диапазон допустимых значений, чем int. То есть byte это как бы коробочка поменьше, а int - это коробочка побольше. И значит, мы можем byte вложить в int.
3. int и long. int имеет меньший диапазон допустимых значений, чем long. То есть int это как бы коробочка поменьше, а long - это коробочка побольше. И значит, мы можем int вложить в long.
Проще говоря: мы вкладываем значение из маленькой коробки в большую коробку Приведение типов: Другое дело если вы пытаетесь переложить что-то из большего контейнера в более маленький. Вы можете знать, что в большем контейнере лежит то, что поместиться и в маленьком – но об этом не знает JVM, и пытается предохранить вас от ошибок.
Поэтому, вы должны «прямо сказать», что ситуация под контролем:
int a = 0;
long b = 15;
a = (int) b;
Тут мы дописали (int) перед b. Если бы переменная a была, к примеру, типа byte, в скобках бы стояло (byte).