TGViewer
Java Developer Java Developer @java_developer · 6.34K subscribers
Post #187 4.49K
Преобразование примитивов

Автоматическое приведение типов возможно, когда выполняются два условия:
— оба типа совместимы;
— размер исходного типа меньше размера типа, который хотим получить.

Числовые типы: целочисленные и с плавающей точкой, совместимы друг с другом. Но не существует автоматического преобразования числовых типов в тип char и boolean.

Так как целочисленные константы по дефолту int, то Джава выполняет автоматическое преобразование типов при их сохранении в переменные типа byte, short, long или char. Пример:
byte b = 127;

Во время вычислений происходит повышение типа.
— Тип всех значений byte, short, char повышается до int.
— Если один операнд имеет тип long, тип всего выражения повышается до long. Если один операнд имеет тип float, тип всего выражения повышается до float. Если один операнд имеет тип double, тип всего выражения повышается до double. Сокращенно:
int -> long -> float -> double

Пример:
byte b = 1;
b = b * 2; // compile error
int i = b * 2; // ok

Примеры явного приведения:
byte b = (byte) 300;
0000 0001 0010 1100 -> 0010 1100
byte b = (byte) 128;
0000 0000 1000 0000 -> 1000 0000

Прочитать:
— 3 главу у Шилдта. Типы данных, переменные и массивы
— Подробная статья о преобразовании примитивов
https://bit.ly/2NYFxcr
More from @java_developer
  1. Apr 20, 2025Что посмотреть на выходных — 20 Наткнулся в Ютубе на классное шоу. Такой мини-формат Своей…
  2. Apr 6, 2025Впечатления от JPoint 2025 моего коллеги Впечатления позитивные: большинство докладов понр…
  3. Apr 5, 2025JPoint 2025 Вчера сходил на JPoint — Java-конференцию для опытных разработчиков. Билет мне…
  4. Feb 4, 2025video post
  5. Feb 4, 2025яндексоиды, без негатива )
  6. Dec 24, 2024Kafka Какие есть гарантии доставки сообщений Ответ: 1. At most once (не более одного раза)…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →