Java数据类型
文章目录
- Java数据类型
-
- 数据存储单位
- 数据类型概述
- 基础数据类型
-
- 整型类型
- 浮点类型
- 字符类型
- 布尔类型
- 引用数据类型
-
- 类Class
- 接口interface
- 数组[]
数据存储单位
计算机是使用二进制来表示数据的,也就是其实我们定义的不同类型的变量其实就是一串二进制数。数据存储是以“字节”(Byte)为单位,数据传输大多是以“位”(bit,又名“比特”)为单位,一个位就代表一个0或1(即二进制),每8个位(bit,简写为b)组成一个字节(Byte,简写为B),是最小一级的信息单位
位:位是计算机中最基本的单位,也就是常说的计算机其实只认识0和1,所以每一个0和1都是一个位
字节:字节是计算机中表示空间大小的基本单位,将8个二进制位(bit)看作一个字节(Byte)。
数据类型概述
在计算机编程语言中,数据类型是数据的一个属性,它将会告诉编译器程序员将会如何使用这个数据。大多数的编程语言都支持整数、浮点数、字符和布尔值的基础数据类型。数据类型定义约束了对数据执行的操作、数据的含义以及对该类型数据的存储方式。根据不同的数据类型,而在内存中开辟不同的内存空间来存储数据。
在Java语言中的数据类型大体可以分为两大类,分别是基础数据类型和引用数据类型。

基础数据类型
上面就是Java中的八大基本数据类型,使用不同的数据类型可以定义不同的变量。
整型类型
Java用于表达整数的数据类型有4种:字节型(byte)、短整型(short)、整型(int)、长整型(long)。
讯享网byte:占用 1 个字节,表示的数值范围较小 [-128 ~ 127],用在大型数组中节约空间代替整数。
short:占用 2 个字节, 表示的数据范围是 [-32768 ~ 32767]。short类型表示的范围较小,所以很少使用。
int:占用 4 个字节,表示的数据范围是 [-231 ~ 231-1],int类型是较为常用的类型,虽然所能表示的数据范围已经达到了21亿,但这对于大数据时代来说明显是不够用的。
long:占用 8 个字节,表示的数据范围是 [-263 ~ 263-1],这个单位已经非常大了,足够绝大部分的工程场景使用。long类型的初始化值要带着大写/小写的L/l,因为整数字面量默认是类型的,需要使用L来表示其为长整型的数值。
浮点类型
Java用于表达浮点数的数据类型有2种:单精度浮点型(float)、双精度浮点型(double)。

讯享网
float:和一样也是占用 4 个字节,但是浮点数在内存中的布局和整数差别很大,不能单纯的用 2 ^ n 的形式表示数据范围。Java 的类型的内存布局遵守 IEEE 754 标准, 尝试使用有限的内存空间表示可能无限的小数, 势必会存在一定的精度误差。而其后面带着一个F的原因和是类似的,因为浮点数的默认类型为类型。
double:占用 8 个字节,且和float一样内存布局是遵循 IEEE 754 标准。
字符类型
Java使用char类型来表示字符,使用 单引号 + 单个字母 组成字符字面量,不过在计算机眼中其实字符本质是一个整数,在C语言中是使用ASCII码值表示字符,而在Java中是使用Unicode表示字符,ASCII字符集编码是Unicode字符集编码的一个子集。一个字符占用的是 2 个字节。
ASCII码对照表
常见ASCII码的大小规则:数字< 大写字母 < 小写字母。
- 数字0比数字9要小,并按0到9顺序递增。如 “0”<“9” ;
- 字母A比字母Z要小,并按A到Z顺序递增。如“A”<“Z” ;
- 同个字母的大写字母比小写字母要小32。如“A”<“a”;
- 几个常见字母的ASCII码大小: “A”为65;“a”为97;“0”为 48。
布尔类型
Java布尔类型的取值只有两个:true(真)、false(假)。在C语言中是使用"1"表示"真",“0"表示"假”,这点需要与Java区分,Java中是使用true和false表示,这两个值只能赋值给boolean类型的变量,或者运用于布尔运算表达式,如:对两个值进行数值进行逻辑运算,判断结果的真假。
讯享网
引用数据类型
引用数据类型就类似于C语言中的指针,很多资料上说Java并不支持指针,其实是不支持指针运算,而指针类型是支持的,只不过在Java中将其称为引用数据类型。引用数据类型指向的是对象,引用数据类型变量保存的是对象的地址,按照Java中存储对象的内存模型来存储,使用内存中的堆区和栈区来进行数据的存储。即,引用(变量)是存储在内存栈区中,而对象本身则是存储在内存堆区中,根据引用存储的对象的地址可以找到对象所存储的内存空间。
在Java中的引用数据类型可分为三大类:类Class、接口interface、数组[]。
类Class
Java是面向对象的编程语言,一切皆为对象,对象的抽象为类,所以在Java中除了基本数据类型之外,其他数据类型都要求为一个类。
声明一个类就是创建一个数据类型,类在Java中是属于引用数据类型,Java使用关键字来定义类,使用关键字来实例化对象。
类是对某一类事物的描述,是抽象的、概念上的定义;对象是实际存在的该类事物的个体,因而也称实例(Instance)。类和对象就如同概念和实物之间的关系一样,类就好比是一个模板,而对象就是该模板下的一个实例。就如同你手上的CPU,制作CPU的蓝图为一个类,而你手上的CPU则为类的实例(对象)。
接口interface
Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。相当于是提供了一个规范或者说标准,实现该接口的类都需要遵守。
Java使用关键字来定义接口,使用来实现接口。
Java接口的方法只能是抽象的和公开的,Java接口不能有构造器,Java接口可以有、和属性。接口不是类,不能使用运算符实例化一个接口,但可以声明一个接口变量[interface name] [变量名]。接口使得实现接口的类或结构在形式上保持一致。
数组[]
数组对于每一门编程语言来说都是很重要的知识点,不同语言对数组的实现及处理也不尽相同,Java提供的数组是用于存固定的同类型元素。
数组本身是引用数据类型,而数组中的元素可以是任意数据类型,包括基本数据类型和引用数据类型(包括自己定义的类),创建一个数组会在内存堆区中开辟一块连续的空间,而在内存栈区中则会保存数组首元素的地址,其他元素则是通过偏移量来访问。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/6376.html