Очевидно оно не будет выполнятся, потому что тип byte , младше вида int.
Для исполнения предоставленной операции, мы будем употреблять приведение видов.
Принципиально знать:
Приведение - это явное преображенье видов.
Форма преображенья располагает таковой тип:
(целевой_тип) значение;
Ежели значение вида byte, то оно будет уменьшено до итог дробления по модолю:
int a;
byte b;
b = (byte) a;
byte b;
b = (byte) a;
При присваивании значения с плавающей точкой переменной, мы исполняем иной тип преображенья - усечение.
Приведу пример программы, тот или иной продемонстрирует множество преображений вида, тот или другой призывают приведение:
public class privedenie {
public static void main(String agrs []){
byte b;
int i = 257;
double d = 323.42;
System.out.println(" Преображенье int в byte :");
b = (byte) i;
System.out.println("i и b" + i + " " + b);
System.out.println("Преображенье double в int");
i = (int) d;
System.out.println(" d и i" + d + " " + b);
System.out.println("Преображенье double в byte");
b = (byte) d;
System.out.println("d и b" + d + " " + i);
}
}
Заключение программы будет таков:
Преображенье int в byte :
i и b257 1
Преображенье double в int
d и i323.42 1
Преображенье double в byte
d и b323.42 323
i и b257 1
Преображенье double в int
d и i323.42 1
Преображенье double в byte
d и b323.42 323
Для вас не понятно?
Доставляйте осмотрим преображенья, итак, иногда значение 257 мы приводим к разновидности byte, то результатом дробления 257 на 256 будет одинаков один-одинехонек.
Иногда мы double приводим в int, то происходит сокращение и мы приобретаем 323.
А на счет преображенье double в byte , его дробная количество отбрасывается и значение миниатюризируется до итог дробления по модулю на 256, тот или иной в предоставленном случае одинаков 67.
На этом по жалуй и окончу наш урок, сможете перебегать к последующему -.