Java数据类型分基本类型(8种,存值本身)和引用类型(存对象地址);基本类型含整数、小数、char、boolean;引用类型包括类、接口、数组等;String是引用类型;包装类支持自动装箱/拆箱。

Java 常用数据类型分两大类:基本类型(primitive types)和引用类型(reference types)。理解它们的关键是记住——基本类型存的是“值本身”,引用类型存的是“对象在内存中的地址”。
基本数据类型:8种,固定大小,效率高
它们是 Java 语言内置的、最底层的数据单位,不依赖任何类库,声明后直接分配栈内存。
- 整数型:byte(1字节)、short(2字节)、int(4字节)、long(8字节)——日常用 int 最多,long 用于大数字(如时间戳、ID)
- 小数型:float(4字节,精度约6–7位)、double(8字节,精度约15位)——科学计算或高精度场景优先选 double;float 一般只用于对内存敏感的场合(如安卓图形)
- 字符型:char(2字节),表示单个 Unicode 字符,用单引号,比如 'A'、'中'
- 布尔型:boolean(大小未精确定义,JVM 自行优化),只有 true 和 false 两个值,不能当 0/1 用,也不能和数字互转
引用数据类型:灵活但需注意“null”和内存管理
所有非基本类型的变量,都是引用类型。它们实际指向堆内存中的对象,变量里存的只是“地址”。常见有:
- 类(Class):比如 String、Scanner、自定义的 Person 类——声明后必须 new 或赋值才可用,否则是 null
- 接口(Interface):如 List、Runnable——不能 new,但可指向实现类的对象
- 数组(Array):如 int[]、String[]——属于引用类型,哪怕元素是基本类型;声明后要 new 或初始化,否则为 null
- 枚举(Enum)和注解(Annotation)也属于引用类型,初学可先聚焦前三种
String 是特例:看起来像基本类型,其实是引用类型
虽然写法上可以 String s = "hello";(不用 new),但它本质是 java.lang.String 类的实例。关键点:
十天学会易语言图解教程用图解的方式对易语言的使用方法和操作技巧作了生动、系统的讲解。需要的朋友们可以下载看看吧!全书分十章,分十天讲完。 第一章是介绍易语言的安装,以及运行后的界面。同时介绍一个非常简单的小程序,以帮助用户入门学习。最后介绍编程的输入方法,以及一些初学者会遇到的常见问题。第二章将接触一些具体的问题,如怎样编写一个1+2等于几的程序,并了解变量的概念,变量的有效范围,数据类型等知识。其后,您将跟着本书,编写一个自己的MP3播放器,认识窗口、按钮、编辑框三个常用组件。以认识命令及事件子程序。第
立即学习“Java免费学习笔记(深入)”;
- 字符串字面量(如 "abc")会进字符串常量池,相同内容可能复用同一对象
- 用 == 比较的是地址,不是内容;比较内容要用 .equals()
- 字符串不可变(immutable),每次拼接都会生成新对象,大量拼接建议用 StringBuilder
自动装箱与拆箱:连接基本类型和包装类的桥梁
Java 为每种基本类型提供了对应的包装类(如 int → Integer、boolean → Boolean),主要用于泛型、集合等需要引用类型的场景。
- 自动装箱:把基本类型转成包装类对象,如 Integer i = 100;
- 自动拆箱:把包装类对象转回基本类型,如 int j = i;
- 注意陷阱:包装类对象可能为 null,拆箱时会抛 NullPointerException;另外,-128 到 127 的 Integer 在常量池中缓存,== 可能意外为 true,超出范围则 false
基本上就这些。掌握基本类型和引用类型的区分,再记牢 String 和包装类的特性,就能避开大多数入门期的数据类型误区。









