著论准过秦,作赋拟子虚。这篇文章主要讲述Java基本数据类型及其类型转换相关的知识,希望能为你提供帮助。
1.1 计算机存储单元
我们知道计算机是可以用来存储数据的,但是无论是内存还是硬盘,计算机存储设备的最小信息单元叫“位(bit)”,我们又称之为“比特位”,通常用小写的字母”b”表示。而计算机中最基本的存储单元叫“字节(byte)”,
通常用大写字母”B”表示,字节是由连续的8个位组成。
除了字节外还有一些常用的存储单位,其换算单位如下:
1B(字节) = 8bit
1KB = 1024B
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
1.2 java中的数据类型
Java是一个强类型语言,Java中的数据必须明确数据类型。在Java中的数据类型包括基本数据类型和引用数据类型两种。
Java中的基本数据类型:
数据类型 | 关键字 | 内存占用 | 取值范围 |
---|---|---|---|
整数类型 | byte | 1 | -128~127 |
short | 2 | -32768~32767 | |
int(默认) | 4 | -2的31次方到2的31次方-1 | |
long | 8 | -2的63次方到2的63次方-1 | |
浮点类型 | float | 4 | 负数:-3.402823E+38到-1.401298E-45正数:1.401298E-45到3.402823E+38 |
double(默认) | 8 | 负数:-1.797693E+308到-4.9000000E-324正数:4.9000000E-324到1.797693E+308 | |
字符类型 | char | 2 | 0-65535 |
布尔类型 | boolean | 1 | true,false |
?e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方。
?在java中整数默认是int类型,浮点数默认是double类型。
2 类型转换【Java基本数据类型及其类型转换】在Java中,一些数据类型之间是可以相互转换的。分为两种情况:自动类型转换和强制类型转换。
自动类型转换:
?把一个表示数据范围小的数值或者变量赋值给另一个表示数据范围大的变量。这种转换方式是自动的,直接书写即可。例如:
double num = 10;
// 将int类型的10直接赋值给double类型
System.out.println(num);
// 输出10.0
强制类型转换:
?把一个表示数据范围大的数值或者变量赋值给另一个表示数据范围小的变量。
?强制类型转换格式:目标数据类型 变量名 = (目标数据类型)值或者变量;
?例如:
double num1 = 5.5;
int num2 = (int) num1;
// 将double类型的num1强制转换为int类型
System.out.println(num2);
// 输出5(小数位直接舍弃)
文章图片
说明:
- char类型的数据转换为int类型是按照码表中对应的int值进行计算的。比如在ASCII码表中,\'a\'对应97。
int a = \'a\';
System.out.println(a);
// 将输出97
- 整数默认是int类型,byte、short和char类型数据参与运算均会自动转换为int类型。
byte b1 = 10;
byte b2 = 20;
byte b3 = b1 + b2;
// 第三行代码会报错,b1和b2会自动转换为int类型,计算结果为int,int赋值给byte需要强制类型转换。
// 修改为:
int num = b1 + b2;
// 或者:
byte b3 = (byte) (b1 + b2);
- boolean类型不能与其他基本数据类型相互转换。
推荐阅读
- AI时代来袭,你的存储做好准备了吗()
- 最新的前端大厂面经(详解答案)
- 用python实现自动发邮件的功能
- ansible+jenkins发布优化
- 博睿数据亮相 2021 服贸会,以智能运维赋能数字化体验
- 第二十三周作业
- 第二十四周作业
- Git 配置使用代理
- terraform-远程状态存储