基础数据类型和引用数据类型的简单介绍

本文详细介绍了Java中的基本数据类型(如byte、int、float等)和引用数据类型(如类、接口、数组、枚举和字符串),区分了值类型与引用类型,并阐述了内存中对象的存储方式——堆内存和栈内存。
摘要由CSDN通过智能技术生成

Java 中的数据类型可以分为基本数据类型(Primitive Data Types)和引用数据类型(Reference Data Types)两种。

基本数据类型(Primitive Data Types):

  1. 整数类型:

    • byte: 8 位,范围为 -128 到 127。
      byte byteValue = 100;
    • short: 16 位,范围为 -32768 到 32767。
      short shortValue = 1000;
    • int: 32 位,范围为 -2^31 到 2^31-1。
      int intValue = 100000;
    • long: 64 位,范围为 -2^63 到 2^63-1。
      long longValue = 1000000000L; // 注意:long类型的数字后面需要加上 'L' 或 'l' 表示是长整型
  2. 浮点数类型:

    • float: 32 位,范围约为 3.4e-038 到 3.4e+038。
      float floatValue = 3.14f; // 注意:float类型的数字后面需要加上 'f' 或 'F' 表示是单精度浮点数
    • double: 64 位,范围约为 1.7e-308 到 1.7e+308。
      double doubleValue = 3.1415926;
  3. 字符类型:

    • char: 16 位 Unicode 字符,范围为 '\u0000' 到 '\uffff'。
      char charValue = 'A';
  4. 布尔类型:

    • boolean: 用于表示 true 或 false。
      boolean booleanValue = true;

这些基本数据类型用于存储简单的数据值,它们都是直接存储在内存中的,因此也被称为值类型(Value Types)。

引用数据类型(Reference Data Types):

  1. 类(Class):

    • 类是一种引用数据类型,用于表示对象的模板。它们可以包含属性和方法。
    • 例如,你可以定义一个名为 Person 的类,用于表示人员的属性和行为。
      Person person = new Person("John", 30);
  2. 接口(Interface):

    • 接口是一种引用数据类型,它定义了一组方法的签名,但没有提供方法的实现。
    • 例如,Comparable 接口定义了 compareTo() 方法,用于比较两个对象的大小。
      // 定义一个类实现 Comparable 接口
      public class Person implements Comparable<Person> {
          private String name;
          private int age;
      
          // 构造方法、getter和setter方法等省略
      
          // 实现 compareTo() 方法
          @Override
          public int compareTo(Person otherPerson) {
              // 比较年龄
              if (this.age < otherPerson.age) {
                  return -1; // 返回负整数表示当前对象小于参数对象
              } else if (this.age > otherPerson.age) {
                  return 1;  // 返回正整数表示当前对象大于参数对象
              } else {
                  return 0;  // 返回零表示当前对象等于参数对象
              }
          }
      }
      
  3. 数组(Array):

    • 数组是一种引用数据类型,用于存储同一类型的多个元素。
    • 例如,你可以定义一个整数数组 int[] numbers 来存储一组整数。
      int[] array = {1, 2, 3, 4, 5};
  4. 枚举(Enum):

    • 枚举是一种引用数据类型,用于定义一组命名的常量。
    • 例如,你可以定义一个枚举类型 Weekday 来表示一周的每一天。
      enum week{Su, Mo, Tu, We, Th, Fr, Sa};
  5. 字符串(String):

    • 字符串是一种引用数据类型,用于表示文本数据。
    • 例如,你可以定义一个字符串 String message = "Hello, World!" 来存储一段文本。
      String stringValue = "Hello, World!";

引用数据类型存储的是对象的引用或地址,而不是对象的实际值。当你创建一个对象时,实际的数据存储在堆内存中,而栈内存中存储的是对象的引用。

  • 45
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值