JAVA的基本类型介绍

Java 有 8 种基本数据类型,分为 4 种整数类型、2 种浮点数类型、1 种字符类型和 1 种布尔类型。这些基本数据类型在内存中占据固定的字节数,用于存储简单的数据值。

整数类型

byte:
  • 字节数:1 字节(8 位)。
  • 取值范围:-128 到 127(-27到27-1)。
  • 用途:用于存储占用空间小的整数值,比如文件的字节流数据读取时,字节类型的数据可以很方便地进行处理。例如:
clike 复制代码
byte aByte = 10;
short:
  • 字节数:2 字节(16 位)。
  • 取值范围:-32768 到 32767(--215到215-1)。
  • 用途:在一些对内存比较敏感,且数值范围不大的情况下使用,如某些嵌入式系统或者对存储要求较高的大数据场景中的局部计数变量。例如:
clike 复制代码
short aShort = 1000;
int:
  • 字节数:4 字节(32 位)。
  • 取值范围:-2147483648 到 2147483647(-231到231-1)。
  • 用途:是最常用的整数类型,用于存储一般的整数值,如循环计数、数组下标等。例如:
clike 复制代码
int anInt = 100000;

long:

  • 字节数:8 字节(64 位)。
  • 取值范围:-9223372036854775808 到 9223372036854775807(-263到263-1)。
  • 用途:用于存储较大的整数值,如时间戳(以毫秒为单位)、大文件的大小等。例如:
clike 复制代码
long aLong = 10000000000L; // 注意要在数字后面加L,以表示是long类型

浮点数类型

float:
  • 字节数:4 字节(32 位)。
  • 精度:单精度浮点数,有效数字约为 6 - 7 位。
  • 用途:用于存储单精度浮点数,在对精度要求不是极高且需要节省内存空间的情况下使用,如游戏中的一些简单物理计算(位置、速度等)。例如:
clike 复制代码
float aFloat = 3.14f; // 注意要在数字后面加f,以表示是float类型
double:
  • 字节数:8 字节(64 位)。
  • 精度:双精度浮点数,有效数字约为 15 位。
  • 用途:是最常用的浮点数类型,用于存储一般的浮点数,如科学计算、金融计算等场景下的数值。例如:
clike 复制代码
double aDouble = 3.1415926;

字符类型

char:
  • 字节数:2 字节(16 位)。
  • 取值范围:0 到 65535,表示 Unicode 字符集中的一个字符。
  • 用途:用于存储单个字符,如字符常量、字符串中的单个字符等。例如:
clike 复制代码
char aChar = 'A';

布尔类型

boolean:
  • 字节数:理论上只需要 1 位,但在 Java 虚拟机规范中没有明确规定具体字节数,实际占用空间由虚拟机实现决定,一般为 1 字节。
  • 取值范围:只有true和false两个值。
  • 用途:用于条件判断、逻辑控制等,如在循环条件、判断语句中使用。例如:
java 复制代码
boolean aBoolean = true;
if (aBoolean) {
    System.out.println("条件为真");
}

这些基本数据类型是 Java 编程的基础,在定义变量、进行计算和存储数据等操作中经常使用。同时,Java 还提供了对应的包装类型(Byte、Short、Integer、Long、Float、Double、Character、Boolean),用于在需要对象的场景下(如集合框架、泛型等)来包装这些基本数据类型。

小白路漫漫,让我们一起加油!!!

相关推荐
迷枫7121 小时前
SQL性能排查记录
java·数据库·sql
渡我白衣1 小时前
深入理解 Transformer:Transformer 究竟是什么?
java·linux·开发语言·c++·人工智能·深度学习·transformer
Tisfy4 小时前
LeetCode 1927.求和游戏:抵消+看最值
java·leetcode·游戏·题解·博弈论
「QT(C++)开发工程师」9 小时前
C++ 11 常用for循环
开发语言·c++
我还记得那天9 小时前
0 初识C++
开发语言·c++
FfHUCisI10 小时前
Go 编译过程全景
开发语言·后端·golang
FfHUCisI10 小时前
Golang 语法分析与 AST:Parser 与 go/ast
开发语言·后端·golang
秋饼10 小时前
JDK 27 企业级 AI 服务落地实战:G1 默认、紧凑对象头、后量子 TLS 与 JFR 脱敏全解析
java·ai·技术分享·后端开发
卓怡学长11 小时前
w176基于SpringBoot的医院管理系统
java·spring boot·spring·maven·intellij-idea