Size: a a a

2020 November 08

JI

Jalol Imomaddinov in learn.java
даже если вы сделаете int + int и присвоете short, то значение, если не превышает Short.MAX_VALUE то приведется к short
источник

DS

Dmitriy Shilnikov in learn.java
Но если посмотреть байткод, то оно всё равно вначале всё к int приводит, а потом назад в short
источник

JI

Jalol Imomaddinov in learn.java
Сорян, я ошибся
источник

JI

Jalol Imomaddinov in learn.java
придется кастить short c = (short) (a + b)
источник

M

Maxim Borisov in learn.java
без явного вниз то конечно не даст
источник

M

Maxim Borisov in learn.java
не вниз правильнее наверное а сужение типа.
источник

DS

Dmitriy Shilnikov in learn.java
Jalol Imomaddinov
Сорян, я ошибся
Ты просто делаешь неправильно )
источник

DS

Dmitriy Shilnikov in learn.java
final int a = 1;
       final int b = 1;
       short c = a + b;
источник

DS

Dmitriy Shilnikov in learn.java
Это будет работать
источник

DS

Dmitriy Shilnikov in learn.java
Без приведения
источник

JI

Jalol Imomaddinov in learn.java
Dmitriy Shilnikov
final int a = 1;
       final int b = 1;
       short c = a + b;
Да, точно. Спасибо))))
источник

n.

ns ... in learn.java
Dmitriy Shilnikov
Но если посмотреть байткод, то оно всё равно вначале всё к int приводит, а потом назад в short
Получается, если в лимит не упирается , то в short приводит.
А если переполнение - то уже int
источник

n.

ns ... in learn.java
источник

DS

Dmitriy Shilnikov in learn.java
ns ...
Получается, если в лимит не упирается , то в short приводит.
А если переполнение - то уже int
Любая операция с short приводится к int.
источник

DS

Dmitriy Shilnikov in learn.java
В джаве, насколько я знаю, нет инструкции для сложения двух шортов, только двух интов.
источник

DS

Dmitriy Shilnikov in learn.java
Просто в ряде случаев тебе компилятор позволит явно не писать приведение типов. Но это не значит, что его не будет.
источник

M

Maxim Borisov in learn.java
магия какая то когда final есть
источник

n.

ns ... in learn.java
Dmitriy Shilnikov
В джаве, насколько я знаю, нет инструкции для сложения двух шортов, только двух интов.
да, но у меня на скрине num2 - остался short, а num 3 - стал int
В обоих случаях сложение двух чисел
источник

DS

Dmitriy Shilnikov in learn.java
Maxim Borisov
магия какая то когда final есть
Да когда final, он, походу, их вообще не считает даже переменными или значениями )
источник

JI

Jalol Imomaddinov in learn.java
Dmitriy Shilnikov
Да когда final, он, походу, их вообще не считает даже переменными или значениями )
Походу значение вычисляется при компиляции
источник