Java 变量类型总结

Java 变量分为两大类:基本数据类型(Primitive Types)引用数据类型(Reference Types)

一、基本数据类型(8 种)

存储实际值,直接分配内存空间,速度快。

类型

关键字

大小(字节)

默认值

取值范围/说明

字节型

byte

1

0

-128 ~ 127

短整型

short

2

0

-32,768 ~ 32,767

整型

int

4

0

-2³¹ ~ 2³¹-1(约 ±21 亿)

长整型

long

8

0L

-2⁶³ ~ 2⁶³-1,需加 L 后缀(如 100L)

单精度

float

4

0.0f

科学计数法,需加 f 后缀(如 3.14f)

双精度

double

8

0.0d

默认小数类型(如 3.14)

字符型

char

2

u0000

Unicode 字符(如 ‘A’ 或 ‘u0041’)

布尔型

boolean

未定义

false

true 或 false

二、引用数据类型

存储对象的内存地址(引用),默认值为 null。

类型

说明

示例

类(Class)

自定义类或库类(如 String)

String s = “Hello”;

接口(Interface)

实现接口的类的引用

List list = new ArrayList();

数组(Array)

固定长度的同类型数据集合

int[] arr = new int[5];

枚举(Enum)

预定义常量集合

enum Color { RED, GREEN }

注解(Annotation)

元数据标记

@Override

三、变量作用域

  1. 局部变量
  2. 在方法/代码块内声明
  3. 无默认值,必须手动初始化
  4. 作用域限于声明它的代码块
void myMethod() {
    int x = 10; // 局部变量
    System.out.println(x);
}

实例变量(成员变量)

  • 在类内、方法外声明
  • 有默认值(如 int 默认为 0)
  • 随对象创建/销毁
class MyClass {
    int age; // 实例变量(默认值=0)
}

静态变量(类变量)

  • 用 static 声明
  • 在类加载时初始化,全局共享
  • 通过类名直接访问
class MyClass {
    static int count = 0; // 静态变量
}

四、类型转换

  1. 自动转换(隐式)
    小类型 → 大类型(如 int → double):
int a = 100;
double b = a; // 自动转换为 100.0
  1. 强制转换(显式)
    大类型 → 小类型(可能丢失精度):
double x = 10.5;
int y = (int) x; // y=10(截断小数部分)

3.引用类型转换

向上转型(子类→父类):自动转换

Animal cat = new Cat(); // Cat 是 Animal 的子类

向下转型(父类→子类):需显式转换(可能抛出 ClassCastException)

if (animal instanceof Cat) {
    Cat myCat = (Cat) animal;
}

五、关键注意事项

  1. final 变量:常量,值不可修改(final int MAX = 100;)。
  2. 类型默认值
  3. 基本类型:0 / false / u0000
  4. 引用类型:null
  5. 字面量后缀
  6. long:L(如 1000L)
  7. float:f(如 3.14f)
  8. var(局部变量类型推断)(Java 10+):
var list = new ArrayList<String>(); // 自动推断为 ArrayList<String>

总结图示

Java 变量类型总结

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容