Java数据类型_JAVA数据类型可以分为哪两大类?

createh51个月前 (02-11)技术教程8

Java的两大数据类型:

  • 基本数据类型
  • 引用数据类型

1.1 内置数据类型

Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。

1.1.1 整数类型(Integer Types)

byte型:

  • byte数据类型是8位、有符号的,以二进制补码表示的整数;
  • 最小值是-128(-2^7);
  • 最大值是127(2^7-1);
  • 默认值是0;
  • byte类型用在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有int类型的四分之一;
  • 例子:byte a = 100,byte b = -50。

short型(短整型):

  • short数据类型是16位、有符号的以二进制补码表示的整数
  • 最小值是-32768(-2^15);
  • 最大值是32767(2^15 - 1);
  • Short数据类型也可以像byte那样节省空间。一个short变量是int型变量所占空间的二分之一;
  • 默认值是0;
  • 例子:short s = 1000,short r = -20000。

int型(整型):

  • int数据类型是32位、有符号的以二进制补码表示的整数;
  • 最小值是-2,147,483,648(-2^31);
  • 最大值是2,147,483,647(2^31 - 1);
  • 一般地整型变量默认为int类型;
  • 默认值是0;
  • 例子:int a = 100000, int b = -200000。

long(长整型):

  • long数据类型是64位、有符号的以二进制补码表示的整数;
  • 最小值是-9,223,372,036,854,775,808(-2^63);
  • 最大值是9,223,372,036,854,775,807(2^63 -1);
  • 这种类型主要使用在需要比较大整数的系统上;
  • 默认值是0L;
  • 例子: long a = 100000L,long b = -200000L。

Java支持多种表示整型字面值的方式,包括十进制、八进制、十六进制和二进制

1. 十进制(Decimal)

十进制是最常见的表示方式,直接使用0到9的数字表示。

int decimalValue = 123; // 十进制表示

2. 八进制(Octal)

八进制使用前缀 0 表示,数字范围是0到7。

int octalValue = 0123; // 八进制表示,等同于十进制的83

3. 十六进制(Hexadecimal)

十六进制使用前缀 0x0X 表示,数字范围是0到9和A到F(或a到f)。

int hexValue = 0x1A; // 十六进制表示,等同于十进制的26

4. 二进制(Binary)

二进制使用前缀 0b0B 表示,数字范围是0和1。

int binaryValue = 0b1010; // 二进制表示,等同于十进制的10

1.1.2 浮点类型(Floating Point Types)

float(单精度浮点型):

  • float数据类型是单精度、32位、符合IEEE 754标准的浮点数;
  • float在储存大型浮点数组的时候可节省内存空间;
  • 默认值是0.0f;
  • 浮点数不能用来表示精确的值,如货币;
  • 例子:float f1 = 234.5f。

double(双精度浮点型):

  • double数据类型是双精度、64位、符合IEEE 754标准的浮点数;
  • 浮点数的默认类型为double类型;
  • double类型同样不能表示精确的值,如货币;
  • 默认值是0.0d;
  • 例子:double d1 = 123.4。

Java支持多种表示浮点型字面值的方式,包括十进制表示法、科学计数法、后缀表示法

1. 十进制表示法

  • 直接写出一个带有小数点的数值。
  • 例如:3.14, 0.5, -2.718

2. 科学计数法

  • 使用 eE 表示指数部分。
  • 例如:3.14e2 表示 3.14 * 10^2 = 314.0
  • 例如:1.23E-3 表示 1.23 * 10^-3 = 0.00123

3. 后缀表示法

  • 使用 fF 后缀表示 float 类型。
  • 使用 dD 后缀表示 double 类型(可选,因为默认就是 double)。
  • 例如:3.14f 表示 float 类型的 3.14,3.143.14d 表示 double 类型的 3.14。

示例代码

public class FloatingPointLiterals {
    public static void main(String[] args) {
        // 十进制表示法
        double pi = 3.14;
        float e = 2.718f;  // 使用 f 后缀表示 float 类型

        // 科学计数法
        double largeNumber = 1.23e6;  // 1.23 * 10^6 = 1230000.0
        double smallNumber = 4.56E-4;  // 4.56 * 10^-4 = 0.000456

        // 使用 d 后缀表示 double 类型(可选)
        double anotherPi = 3.14d;

        // 输出结果
        System.out.println("pi: " + pi);
        System.out.println("e: " + e);
        System.out.println("largeNumber: " + largeNumber);
        System.out.println("smallNumber: " + smallNumber);
        System.out.println("anotherPi: " + anotherPi);
    }
}

1.1.3 布尔类型(Boolean Type)

boolean(布尔型):

  • boolean数据类型表示一位的信息;
  • 只有两个取值:true和false;
  • 这种类型只作为一种标志来记录true/false情况;
  • 默认值是false;
  • 例子:boolean one = true。

1.1.4 字符类型(Character Type)

char(字符型):

  • char类型是一个单一的16位Unicode字符;
  • 最小值是’\u0000’(即为0);
  • 最大值是’\uffff’(即为65,535);
  • char数据类型可以储存任何字符;
  • 例子:char letter = ‘A’。

***在 Java 中,字符型字面值(Character Literal)用于表示单个字符。字符型字面值通常用单引号 ' 包围,并且可以包含一个字符或一个转义序列


1. 基本字符型字面值

  • 字符型字面值表示一个 Unicode 字符,通常用单引号 ' 包围。例如:
char ch1 = 'A'; // 字符 'A'
char ch2 = '1'; // 字符 '1'
char ch3 = ' '; // 空格字符

2. 转义序列

  • Java 支持多种转义序列,用于表示一些特殊字符或不可打印字符。常见的转义序列包括:
    • \n:换行符(newline)
    • \t:制表符(tab)
    • \b:退格符(backspace)
    • \r:回车符(carriage return)
    • \f:换页符(form feed)
    • \\:反斜杠(backslash)
    • \':单引号(single quote)
    • \":双引号(double quote)
    • \uXXXX:Unicode 字符,其中 XXXX 是四位十六进制数
  • 示例:
  • char newline = '\n'; // 换行符 char tab = '\t'; // 制表符 char backslash = '\\'; // 反斜杠 char singleQuote = '\''; // 单引号 char unicodeChar = '\u03A9'; // Unicode 字符 Ω

3. Unicode 字符

  • Java 支持使用 Unicode 字符,可以通过 \u 转义序列来表示。Unicode 字符可以表示任何语言的字符,包括中文、日文、希腊字母等。

示例:

char chineseChar = '\u4E2D'; // 中文字符 '中'
char greekOmega = '\u03A9'; // 希腊字母 Ω

1.2 引用数据类型

类(Class):

  • 类是对象的模板,定义了对象的属性和行为。例如:
class MyClass {
    int value;

    void printValue() {
        System.out.println(value);
    }
}

接口(Interface):

  • 接口定义了一组方法的签名,但没有实现。类可以实现接口。例如:
interface MyInterface {
    void doSomething();
}

数组(Array):

  • 数组是一种存储多个相同类型元素的数据结构。例如:
int[] numbers = {1, 2, 3, 4, 5};

枚举(Enum):

  • 枚举是一种特殊的数据类型,它允许一个变量成为一组预定义常量的集合。例如:
enum Day {
    SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
}

相关文章

整型数据类型有哪些?有哪些表现形式?

整型用于表示没有小数部分的数值,它允许是负数。整型的范围与运行 Java 代码的机器无关,这正是 Java 程序具有很强移植能力的原因之一。与此相反,C 和 C++程序需要针对不同的处理器选择最有效的...

Java中的数据类型_java里面的数据类型

4.数据类型4.1 java中的数据类型分为两大类:基本数据类型和引用类型。基本数据类型:数值型 byte[1],short[2],int[4],long[8]浮点型 float[4],double[...

Java中的顺序语句结构:编程世界的“流水线”

在Java编程中,顺序语句结构是最基础、最常见的代码执行方式。它就像一条流水线,按照从上到下的顺序依次执行每一条语句。无论是初学者还是资深开发者,理解顺序语句结构都是掌握Java编程的关键一步。本文将...

ChatGPT:教你认识一个神奇的python的数字类型int(有符号整型)

学编程 的人都知道,数据类型是必须要熟透和掌握的章节,在很多编程语言中,每个数据类型一般都有取值范围,比如:1)C++ 中C++中定义的int型为有符号32位整数,占4个字节,取值范围在-2,147,...

六种java的多线程设计模式详解和代码举例

java的多线程处理,有哪些模式可以使用呢,如何使用呢。本文列举了六种多线程设计模式供大家参考。1.生产者-消费者模式设计理念:生产者-消费者模式通过协调两个线程(生产者和消费者)来处理数据,生产者生...

Java集合-Map_java集合map的比较key的方法

Map(java.util.Map)接口,代表着key和value间的映射,更具体地说,Java映射可以存储键和值对,一旦存储在地图中,以后就可以只使用键来查找值。Map接口不是Collection...