JAVA 语言中有八种基本的数字类型,分别是 byte、short、int、long、float、double、char 和 boolean。这些类型的区别在于它们所占用的内存空间和表示的范围不同。在使用和选择数字类型时,需要考虑以下几个因素:
- 数字的大小:如果数字很小,可以使用 byte 或 short 类型,它们占用 1 个字节和 2 个字节的内存空间,分别可以表示 -128 到 127 和 -32768 到 32767 的整数。如果数字较大,可以使用 int 或 long 类型,它们占用 4 个字节和 8 个字节的内存空间,分别可以表示 -2147483648 到 2147483647 和 -9223372036854775808 到 9223372036854775807 的整数。如果数字非常大,可以使用 BigInteger 类型,它是一个不可变的任意精度的整数类,可以表示任意大小的整数。
- 数字的精度:如果数字是小数或者需要进行精确的计算,可以使用 float 或 double 类型,它们占用 4 个字节和 8 个字节的内存空间,分别可以表示大约 7 位和 15 位有效数字的浮点数。如果需要更高的精度或者避免浮点数的舍入误差,可以使用 BigDecimal 类型,它是一个不可变的任意精度的小数类,可以表示任意大小和精度的小数。
- 数字的符号:如果数字只能是正数或者零,可以使用 char 类型,它占用 2 个字节的内存空间,可以表示 0 到 65535 的无符号整数。如果数字只能是真或假,可以使用 boolean 类型,它占用 1 个比特的内存空间,可以表示 true 或 false 的布尔值。
下面是一些示例:
// 使用 byte 类型存储一个小整数
byte b = 100;
System.out.println(b); // 输出 100
// 使用 short 类型存储一个较大的整数
short s = -30000;
System.out.println(s); // 输出 -30000
// 使用 int 类型存储一个更大的整数
int i = 1000000000;
System.out.println(i); // 输出 1000000000
// 使用 long 类型存储一个非常大的整数
long l = 1000000000000000000L;
System.out.println(l); // 输出 1000000000000000000
// 使用 BigInteger 类型存储一个任意大的整数
BigInteger bi = new BigInteger("123456789012345678901234567890");
System.out.println(bi); // 输出 123456789012345678901234567890
// 使用 float 类型存储一个小数
float f = 3.14f;
System.out.println(f); // 输出 3.14
// 使用 double 类型存储一个更精确的小数
double d = 3.141592653589793;
System.out.println(d); // 输出 3.141592653589793
// 使用 BigDecimal 类型存储一个任意精度的小数
BigDecimal bd = new BigDecimal("3.141592653589793238462643383279");
System.out.println(bd); // 输出 3.141592653589793238462643383279
// 使用 char 类型存储一个无符号整数
char c = 'A';
System.out.println(c); // 输出 A
System.out.println((int) c); // 输出 65
// 使用 boolean 类型存储一个布尔值
boolean b1 = true;
boolean b2 = false;
System.out.println(b1); // 输出 true
System.out.println(b2); // 输出 false
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2022-07-12 20220712-可以尝试的事项 清单
2022-07-12 20220711-就【阳阳和弟弟吵架小事】复盘
2019-07-12 vi命令——修改文件内容
2019-07-12 tomcat-修改端口--号
2019-07-12 tomcat修改端口号
2019-07-12 XShell上传、下载本地文件到linux服务器