基本数据类型

基本数据类型

基本数据类型直接存储值,它们是Java语言内置的数据类型,不需要创建对象即可使用。

八种基本数据类型:

  1. 数值类型

    • 整数类型
      • byte: 8位整数,取值范围从 -128 到 127。
      • short: 16位整数,取值范围从 -32,768 到 32,767。
      • int: 32位整数,取值范围从 -2,147,483,648 到 2,147,483,647。
      • long: 64位整数,取值范围更大,可以使用后缀 Ll 表示长整型。
    • 浮点数类型
      • float: 32位浮点数,精度较低,适合科学计算。
      • double: 64位浮点数,精度更高,默认情况下所有的浮点数都是 double 类型。
  2. 字符类型

    • char: 16位Unicode字符,取值范围从 '\u0000' 到 '\uffff'。
  3. 布尔类型

    • boolean: 值只能为 truefalse

引用数据类型

引用数据类型指的是对象的引用,它们指向堆内存中的对象。Java中的引用数据类型包括类、数组和接口。

  1. :用户定义的类型,可以通过类创建对象。

    • 示例:

      public class Person {
          String name;
          int age;
      }
      
  2. 数组:一组同类型元素的集合,可以通过索引访问元素。

    • 示例:

      int[] numbers = new int[5];  // 创建一个整型数组
      
  3. 接口:定义了一组行为规范,类可以实现接口。

    • 示例:

      public interface Drawable {
          void draw();
      }
      

总结

  • 基本数据类型:直接存储值,不需要创建对象。
    • 数值类型(整数和浮点数)、字符类型和布尔类型。
  • 引用数据类型:存储对象的引用,指向堆内存中的对象。
    • 类、数组和接口。

示例

下面是一些使用基本数据类型和引用类型的示例代码:

基本数据类型示例

public class BasicTypesExample {
    public static void main(String[] args) {
        byte b = 12;
        short s = 32767;
        int i = 2147483647;
        long l = 9223372036854775807L;

        float f = 3.14f;
        double d = 3.1415926535;

        char c = 'A';
        boolean flag = true;

        System.out.println("Byte: " + b);
        System.out.println("Short: " + s);
        System.out.println("Int: " + i);
        System.out.println("Long: " + l);

        System.out.println("Float: " + f);
        System.out.println("Double: " + d);

        System.out.println("Char: " + c);
        System.out.println("Boolean: " + flag);
    }
}

引用数据类型示例

public class ReferenceTypesExample {
    public static void main(String[] args) {
        // 类
        Person person = new Person();
        person.name = "John Doe";
        person.age = 30;

        // 数组
        int[] numbers = {1, 2, 3, 4, 5};

        // 接口
        Drawable drawable = new Circle();

        System.out.println("Person: " + person.name + ", Age: " + person.age);
        System.out.println("Numbers: " + Arrays.toString(numbers));
        drawable.draw();  // 假设 Circle 实现了 Drawable 接口
    }
}

class Person {
    String name;
    int age;
}

interface Drawable {
    void draw();
}

class Circle implements Drawable {
    @Override
    public void draw() {
        System.out.println("Drawing a circle...");
    }
}
posted @   魄罗  阅读(20)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
点击右上角即可分享
微信分享提示