Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.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_Char_Numbers_Int - Fatal编程技术网

Java 作为字符的数字比作为整数的数字占用的空间少吗?

Java 作为字符的数字比作为整数的数字占用的空间少吗?,java,char,numbers,int,Java,Char,Numbers,Int,比如说 char x = '1'; 占用的空间小于 int x = 1; 还是一样?一个字符需要16位。 int需要32位。char需要2个字节,int需要4个字节 所以,是的。char占用更少的空间 Char在内存中存储字符常量。它假定大小为2字节,但基本上只能容纳一个字符,因为char存储unicode字符集。它的最小值为“u0000”或0,最大值为“uffff”或65535(含),但整数为4字节 其他原始类型的范围和大小 Type Size

比如说

char x = '1';
占用的空间小于

int x = 1;
还是一样?

一个字符需要16位。 int需要32位。

char需要2个字节,int需要4个字节

所以,是的。char占用更少的空间

Char在内存中存储字符常量。它假定大小为2字节,但基本上只能容纳一个字符,因为char存储unicode字符集。它的最小值为“u0000”或0,最大值为“uffff”或65535(含),但整数为4字节

其他原始类型的范围和大小

Type            Size            Range of values that can be stored
byte            1 byte          −128 to 127
short           2 bytes         −32768 to 32767
int             4 bytes         −2,147,483,648 to 2,147,483,647
long            8 bytes         9,223,372,036,854,775,808 to9,223,372,036,854,755,807
float           4 bytes         3.4e−038 to 3.4e+038
double          8 bytes         1.7e−308 to 1.7e+038

在Integer和Character类中,有一个大小字段,表示使用空格位。整数使用32位,字符使用16位。

如果希望一个数字占用尽可能少的空间,应使用字节数据类型。它占用的空间是一个字符的一半。这里你能做的最好的是一个位。单个位可以表示0或1。你可以在一个64位的体系结构中打包32个,不过,只有当你可以将多个打包成一个字时,这才有可能。在所有条件相同的情况下,再次从单词中删除它们所生成的指令可以比数据本身填充更多的内容。哇。谢谢