簡體   English   中英

為什么將整數常量分配給字節變量是合法的?

[英]Why assigning an int literal to a byte variable is legal?

int常量分配給byte變量是合法的:

byte b = 123;   // legal

但是,將int變量分配給byte變量是非法的:

int i = 123;
byte b = i;     // illegal

因為當您分配文字(常量值)時,編譯器可以證明該值適合字節。 當您分配變量時,不能這樣做。

如果指定常量編譯器,則很樂意進行編譯,因為它可以確認該值在(0-255)的范圍內,該范圍是byte的有效范圍。

例如,以下代碼可以毫無問題地進行編譯。

const int i = 123;
byte b = i; 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM