mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4
793 字
2 分钟
Java基础入门:变量与数据类型详解
2026-02-05

每个Java新手都会在变量类型上栽跟头,我也不例外。记得有次把int和Integer搞混,debug了一下午才发现是拆箱空指针的问题。这篇文章把基本类型和引用类型的区别掰开揉碎了讲清楚,帮你少走弯路。

Java基础入门:变量与数据类型详解#

变量#

变量就是存数据的容器。每个变量都有类型,决定了它能存什么、能做什么操作。刚入门最容易搞混的就是int和Integer——一个基本类型一个引用类型,用错了就是空指针警告。

声明格式很简单:

int age;
String name;
double salary;

数据类型#

Java的数据类型分两大类:基本数据类型和引用数据类型。

基本数据类型#

Java有8种基本数据类型:

数据类型大小范围示例
byte1字节-128 到 127byte b = 100;
short2字节-32768 到 32767short s = 1000;
int4字节-2^31 到 2^31-1int i = 100000;
long8字节-2^63 到 2^63-1long l = 100000L;
float4字节IEEE 754float f = 3.14F;
double8字节IEEE 754double d = 3.14;
char2字节0 到 65535char c = 'A';
boolean1位true 或 falseboolean b = true;

注意long和float的赋值要加后缀(L/F),不加的话编译器会报错。这个刚开始写的时候老忘,后来习惯了就好。

引用数据类型#

引用数据类型存的是对象的引用,不是对象本身。包括:

  • 类(Class)
  • 接口(Interface)
  • 数组(Array)

变量初始化#

变量声明后必须初始化才能用,不然编译就过不了。两种方式:

int age = 25; // 声明时初始化
String name;
name = "张三"; // 先声明后初始化

作用域#

Java有四种作用域:

  1. 局部变量:在方法或代码块里声明的,作用域仅限于当前代码块
  2. 实例变量:在类里方法外声明的,属于对象
  3. 静态变量:用static修饰的,属于类,所有实例共享
  4. 参数变量:方法参数,作用域仅限于方法内部

常量#

值不能变的变量,用final声明:

final int MAX_AGE = 120;
final double PI = 3.1415926535;

命名规范是全大写,单词间用下划线。这个习惯在团队协作里很有用,看到全大写的变量就知道是不能改的。

类型转换#

自动类型转换#

小范围转大范围,自动发生:

byte b = 100;
int i = b; // 自动转,没问题

强制类型转换#

大范围转小范围,需要强转,但可能丢数据:

int i = 100;
byte b = (byte) i; // 强转,如果值超出byte范围就截断了

最佳实践#

  1. 选合适的数据类型——别什么数字都用int,byte能搞定就别浪费内存
  2. 命名用驼峰——有描述性,别用a、b、c这种
  3. 变量一定要初始化——避免用未初始化的变量
  4. 能用常量就用常量——final是你的好朋友
  5. 作用域越小越好——局部变量优先于成员变量

💡 实战贴士: 用var(Java 10+)可以省去写类型名的麻烦,但别滥用——只在局部变量且类型一目了然的时候用。比如var list = new ArrayList<String>();没问题,但var result = someMethod();就让人看不懂了。

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

部分信息可能已经过时

目录