Java中的short和char类型
根据Java标准,short和char类型都使用2个字节,因此当我编写类似的东西时
char ch = 'c'; short s = ch;
有一个错误说“可能会损失精度”。 我在这里失踪了什么。
Char未签名,签名简称。
因此,虽然它们都是2字节长,但它们将第16位用于不同目的。
char类型的范围是0到2 ^ 16 – 1(0到65535)。
短程为-2 ^ 15至2 ^ 15-1(-32,768至32,767)。
区别在于char
是无符号的, short
是签名的。 因此, char
值的一半范围太大而不能表示为short
(当然,在对称性中, char
不能表示short
值的任何负值)。