Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何计算任何原语的值,谁有超出范围的值_Java - Fatal编程技术网

Java 如何计算任何原语的值,谁有超出范围的值

Java 如何计算任何原语的值,谁有超出范围的值,java,Java,范例 那么,如何计算x中的值 将2355文本值解释为int,在Java中由以下32位表示: byte x; x=(byte)2355; System.out.println(x); 一个字节只有8位,因此会丢失前导的24位: 00000000000000000000100100110011 将其转换回十进制后,剩下的值为51 您可以找到各种基本数据类型的位大小。还要记住,在处理有符号原语时需要考虑。字节数据类型的范围是-128到127(包括)。因此,如果您想处理超出该范围的数字,那么您可以

范例


那么,如何计算x中的值

2355
文本值解释为
int
,在Java中由以下32位表示:

byte x;
x=(byte)2355;
System.out.println(x);
一个
字节
只有8位,因此会丢失前导的24位:

00000000000000000000100100110011
将其转换回十进制后,剩下的值为
51



您可以找到各种基本数据类型的位大小。还要记住,在处理有符号原语时需要考虑。

字节数据类型的范围是-128到127(包括)。因此,如果您想处理超出该范围的数字,那么您可以尝试将数据类型转换为
short
int
long

,您无法在太小而无法容纳它们的类型的变量中拟合值,至少不能不损失精度。要么改变变量的类型,要么使用较低的值(不太可能)。取2355,转换为二进制,只考虑8个最右边的位。当将原始值转换为更高精度的原始值时,可能会丢失信息,请参阅更多信息。
00110011