Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Почему мне IDE выдает ошибку типа данных на обычное математическое вычисление?Eclips

Денис Кузьмин Ученик (102), на голосовании 1 год назад
public static void main (String[] args) {

byte one = 22;
byte two = 9;

byte onetwo = one-two;

Почему в данном случае компилятор считаем, что при вычислении мои значения, которым был присвоен тип данных byte - являются типом данных int, хотя я нахожусь в своём числовом диапозоне?

Почему компилятор не может просто произвести вычисления, а заставляет меня всё это преобразовать :

public static void main (String[] args) {

byte one = 22;
byte two = 9;

byte onetwo = (byte) (one-two);
Голосование за лучший ответ
Apple_Expert Профи (686) 1 год назад
Будет
Byterat -188
Me rabbi sik lala = 3
Терр Онтал Мудрец (12753) 1 год назад
Потому что все целочисленные значения при вычислениях в java приводятся либо в int, либо в long.
Александр Искусственный Интеллект (301692) 1 год назад
попробуй вот так
 final byte one = 22;  
final byte two = 9;

byte onetwo = one-two;
и прокатит без кастинга...
Похожие вопросы