Что это значит "сужение примитива усекает биты старшего разряда"

Что это значит "сужение примитива усекает биты старшего разряда"

2 ответа

Решение

Например, если вы приводите long к int, вы отбрасываете старшие биты long.

Short  -> Byte
0x00FF -> 0xFF
256    -> -128

Вот краткий, тщательно подобранный ответ.

public class Narrow {
 public static void main(String[] args) {
  int i;
  short s;

  i = 32768;
  s = (short) i;
  System.out.println("int of " + i + " becomes a short of " + s);
 }
}

я 2^15, или один больше, чем MAX_VALUE короткой.

Ява ответит int of 32768 becomes a short of -32768

Другие вопросы по тегам