java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Java 八种基本数据类型

Java 八种基本数据类型最新整理

作者:冬天vs不冷

这篇文章给大家分享Java八种基本数据类型,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

一、比特(bit)和字节(Byte)

1、定义与换算关系

单位缩写大小
1 字节1 Byte (B)8 bit (b)
1 千字节1 KB1024 Bytes
1 兆字节1 MB1024 KB
1 吉字节1 GB1024 MB
1 太字节1 TB1024 GB

2、应用场景差异

二、各类型详解

1、整数类型:byte、short、int、long

类型位数取值范围默认值包装类
byte8-27 ~ 27-1(-128~1270Byte
short16-215 ~ 215-1(-32768 ~ 32767)0Short
int32-231 ~ 231-1(约21亿多0Integer
long64-263 ~ 263-1(-9223372036854775808 ~ 9223372036854775807)0LLong

不同整数类型的存储空间和表示数值的范围:

不同整数类型的存储空间和表示数值的范围

2、浮点类型:float、double

关于精度举例说明:

float f = 0.123456789f;
double d = 0.123456789123456789;
System.out.println(f);  // 输出:0.12345679(只有前 7 位是可靠的)
System.out.println(d);  // 输出:0.12345678912345678(保留了更多有效数字)

关于浮点型精度的说明:

3、字符类型:char

类型位数取值范围默认值包装类
char160 ~ 65535(Unicode)‘\u0000’Character
char c12 = 'a'; // ASCII对应数字97
char c13 = 65;   // 这里就是ascii码65,对应字符A
System.out.println(c12+c13); // 97+65=162

3.1、字符字面量(最常见)

最常见的写法,表示单个字符

//使用一对''表示,内部有且仅有一个字符
char c1 = 'a';
char c2 = '中';
char c3 = '1';
char c4 = '%';
char c5 = 'γ';
//编译不通过
//char c6 = '';
//char c7 = 'ab';

3.2、 Unicode转义表示(\uXXXX 格式)

3.3、 转义字符

转义字符说明Unicode表示方式
\n换行符\u000a
\t制表符\u0009
\"双引号\u0022
\'单引号\u0027
\\反斜线\u005c
\b退格符\u0008
\r回车符\u000d

3.4、 整数转换

使用整数转换为对应的字符

char c = 65;  // ASCII 码 65 对应 'A'
System.out.println(c);  // 输出: A
char ch = 0x4F60;  // 十六进制 Unicode 表示 '你'
System.out.println(ch);  // 输出: 你

4、布尔类型:boolean

类型位数取值范围默认值包装类
boolean1true/falsefalseBoolean

Java 语言规范未强制规定 boolean 的大小,仅表示其表示 1 位信息,具体实现由虚拟机决定。这导致不同 JVM 的差异:

三、基本数据类型转换

1、自动类型转换(隐式转换)

示例:

int a = 10;
long b = a;        // 自动转换:int → long
double c = b;      // 自动转换:long → double
int x = 5;
double y = x + 3.14;  // 结果为 double 类型
char ch = 'A';
int code = ch;        // 自动转换:char → int(输出 Unicode 值 65)

2、强制类型转换(显式转换)

精度丢失示例:

double d = 123.456;
int i = (int) d;      // 强制转换:double → int(结果为123,精度丢失)

精度溢出示例:

byte b = 127;         // byte 的最大值是 127
b = (byte)(b + 1);    // 加1后会溢出,结果是 -128
long l = 3000000000L;
int j = (int) l;      // 强制转换:long → int(溢出,结果为-1294967296)

3、不同数据类型运算

byte, short, char 运算 ➜ 自动变成 int

byte a = 10;
byte b = 20;
// byte c = a + b;   // 编译错误:结果是 int
int c = a + b;       // 正确
//byte、short之间做运算
byte b3 = 12;
short s1 = 10;
//short s2 = b3 + s1; // 编译不通过 需要用int来接收
int i4 = b3 + s1;	  // 正确

int 与 long 运算 ➜ 提升为 long

int i = 1000;
long l = 2000L;
long result = i + l;  // i 自动转为 long

int 与 float 运算 ➜ 提升为 float

int i = 5;
float f = 2.5f;
float res = i + f;    // i 转为 float,结果是 7.5

float 与 double 运算 ➜ 提升为 double

float f = 3.5f;
double d = 1.2;
double res = f + d;   // f 转为 double,结果是 4.7

到此这篇关于Java 八种基本数据类型的文章就介绍到这了,更多相关Java 八种基本数据类型内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文