Những gì bạn đang làm là kết hợp các loại phôi với các toán tử đơn nhất.
Vì vậy, chúng ta hãy xem:
Thứ nhất, bạn có giá trị -1
, mà bạn đúc để loại long
.
Sau đó, bạn thực hiện thao tác đơn nhất +
, không thay đổi giá trị, vì vậy bạn vẫn có (long) -1
.
Sau đó, bạn truyền nó sang int, vì vậy bây giờ chúng tôi có int -1
. Sau đó, bạn sử dụng toán tử đơn nhất -
, vì vậy chúng tôi có -(-1)
, là 1
.
Sau đó, bạn truyền nó sang char, vì vậy chúng tôi có char 1
. Sau đó, bạn sử dụng toán tử đơn nhất +
, vì vậy bạn vẫn có 1
.
Cuối cùng, giá trị được truyền đến byte
, vì vậy bạn có byte 1
. Và sau đó nó một lần nữa (ngầm) đúc thành int
.
Nguồn cho http://vanillajava.blogspot.com/2011/10/java-plus.html –