Java基本数据类型都有什么呢?

变量就是用来储存值而保留的内存位置。这就意味着当你创建一个变量时就会在内存中占用一定的空间。

基于变量的数据类型,操作系统会进行内存分配并且决定什么将被储存在保留内存中。因此,通过给变量分配不同的数据类型,你可以在这些变量中存储整数,小数或者字字母。

Java 中有两种有效地数据类型:原始数据类型,引用数据类型。

1.原始数据类型

Java 支持 8 种原始数据类型。原始数据类型是由该语言预先定义的并用关键词命名的。下面让我们深入学习一下这 8 种数据类型。

字节型

byte

字节型是一种 8 位有正负的二进制整数

最小值是 -128(-2^7)

最大值是 127(2^7-1)

默认值为 0

字节型数据类型主要是为了在大型数组内节省空间,主要是替代整数由于字节型比整数小 4 倍。

例如:byte a = 100 , byte b = -50

短整形

short

短整数是一种 16 位有正负的二进制整数

最小值是 -32768(-2^15)

最大值是 32767(2^15-1)

短整数类型的数据也可以像字节型一样用于节省空间。短整数比整数小两倍

默认值为 0

例如:short s = 10000, short r = -20000

整数型

int

整数型是一种 32 位有正负的二进制整数

最小值是 - 2,147,483,648(-2^31)

最大值是 2,147,483,647(2^31 -1)

整数型一般默认被应用于整数值除非担心内存不够用。

默认值为 0

例如:int a = 100000, int b = -200000

长整形

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, int b = -200000L

浮点型

float

浮点型数据是一种单精度的 32 位 IEEE 754 标准下的浮点数据。

浮点型数据主要是为了在大型浮点数字数组中节约内存。

默认值是 0.0f。

浮点型数据不能用于如货币这样的精确数据。

例如:float f1 = 234.5f

双精度型

double

双精度型数据是一种双精度的 64 位 IEEE 754 标准下的浮点数据。

这种数据类型主要是默认被用于表示小数的值,一般是默认的选择。

双精度型数据不能用于如货币这样的精确数据。

默认值是 0.0d

例如:double d1 = 123.4

布尔型

boolean

布尔型数据代表一个信息比特。

它只有两个可能的值:真(true)和假(false)

这种数据类型用于真假条件下的简单标记。

默认值是假(false)

例如:boolean one = true

字符型

char

字符型数据是简单的 16 位 Unicode 标准下的字符。

最小值是: 'u0000' (或 0)。

最大值是: 'uffff' (或 65,535 )。

字符型数据可以用来储存任意字母。

例如: char letter A(字符型的字母A) ='A'

2.引用数据类型

引用数据类型是由类的编辑器定义的。他们是用于访问对象的。这些变量被定义为不可更改的特定类型。例如:Employee, Puppy 等等。

类对象和数组变量就是这种引用数据类型。

任何引用数据类型的默认值都为空。

一个引用数据类型可以被用于任何声明类型和兼容类型的对象。

例如:Animal animal = new Animal("giraffe");

Java常量

常量是代表固定值的源代码。他们直接以代码的形式代表而没有任何估计。常量可以被分配给任意的原始变量类型。例如:

byte a = 68; char a = 'A';

字节型,整数型,长整型和短整型也可以由十进制,十六进制和八进制计数系统表示。

当用这些技术系统表示直接量时,前缀 0 是为了标明八进制,前缀 0x 是为了标明十六进制。例如:

int decimal = 100; int octal = 0144; int hexa = 0x64;

Java 中的字符串型常量的规定和其他大多数语言一样,也是要写在双引号中间。字符串型直接量的例子如下:

"Hello World" "two lines" ""This is in quotes""

字符和字符串型常量可以包含任意的 Unicode 字母。例如:

char a = 'u0001'; String a = "u0001";


Java 语言也支持一些特殊的转义序列的字符和字符串直接量。他们是:

转义字符            含义

                 换行 (0x0a)

                  回车 (0x0d)

f                   换页 (0x0c)

                  退格 (0x08)

s                   空格 (0x20)

                   tab

"                   双引号

'                    单引号  

                    反斜杠          

uxxxx            十六进制 UNICODE 字符 (xxxx)


欢迎想学习Java的小伙伴加入Java学习交流群,群号码:495273252  【长按复制】  我们一起学Java!