Java 数据类型

Java 数据类型概述

Java 数据类型分为两大类:基本数据类型引用数据类型。基本数据类型直接存储数据值,而引用数据类型存储对象的引用(内存地址)。以下将详细介绍这两类数据类型,并附代码示例。


基本数据类型

Java 有 8 种基本数据类型,分为 4 类:

  • 整数型:byteshortintlong
  • 浮点型:floatdouble
  • 字符型:char
  • 布尔型:boolean
整数型
byte b = 127;          // 1 字节,范围 -128 到 127
short s = 32767;       // 2 字节,范围 -32768 到 32767
int i = 2147483647;    // 4 字节,范围 -2^31 到 2^31-1
long l = 9223372036854775807L; // 8 字节,后缀需加 'L'

浮点型
float f = 3.14f;       // 4 字节,后缀需加 'f'
double d = 3.141592653589793; // 8 字节,默认浮点类型

字符型
char c = 'A';          // 2 字节,存储 Unicode 字符
char unicodeChar = '\u0041'; // 表示 'A'

布尔型
boolean flag = true;   // 仅存储 true 或 false


引用数据类型

引用数据类型包括:接口数组。它们不直接存储数据,而是存储对象的引用。

String str = "Hello, Java!"; // String 是引用类型
System.out.println(str.length()); // 调用 String 类方法

数组
int[] numbers = {1, 2, 3}; // 整型数组
String[] names = new String[3]; // 动态初始化
names[0] = "Alice";

自定义类
class Person {
    String name;
    int age;
}
Person p = new Person(); // 创建对象
p.name = "Bob";


类型转换

Java 支持 自动类型转换(小范围转大范围)和 强制类型转换(大范围转小范围)。

自动转换
int num = 100;
long bigNum = num; // 自动转换

强制转换
double pi = 3.14;
int intPi = (int) pi; // 强制转换,结果为 3


装箱与拆箱

Java 提供 包装类(如 IntegerDouble)实现基本类型与对象的转换。

装箱
Integer objInt = 10; // 自动装箱

拆箱
int primitiveInt = objInt; // 自动拆箱


示例综合

public class DataTypesDemo {
    public static void main(String[] args) {
        // 基本类型
        int age = 25;
        double salary = 5000.50;
        char grade = 'A';
        boolean isJavaFun = true;

        // 引用类型
        String message = "Java is powerful!";
        int[] scores = {90, 85, 95};

        // 类型转换
        double doubleAge = age; // 自动转换
        int intSalary = (int) salary; // 强制转换

        // 装箱拆箱
        Integer wrapperAge = age;
        int unwrappedAge = wrapperAge;
    }
}


通过代码示例,可以清晰理解 Java 数据类型的使用场景和特性。合理选择数据类型对内存管理和程序性能至关重要。

你可能感兴趣的:(Java 数据类型)