首先呢,我们先了解一下基本类型和引用类型都有哪些?

目录

基本类型:基本类型有8种

引用类型又大概分为三种:

一、类Class引用  

二、接口interface引用 

三、数组引用

接下来讲述一下基本类型和引用类型的一个比较


基本类型:基本类型有8种

byte,short,int,long,char,boolean,float,double,具体如下:
1、boolean:数据值只有true或false,适用于逻辑计算。
2、char:char型(字符型)数据在内存中占用2个字节。char型数据用来表示通常意义上的字符,每个字符占2个字节,Java字符采用Unicode编码,它的前128字节编码与ASCII兼容字符的存储范围在\u0000~\uFFFF,在定义字符型的数据时候要注意加' ',比如 '1'表示字符'1'而不是数值1, 
3、byte:byte型(字节型)数据在内存中占用1个字节,表示的存储数据范围为:-128~127。
4、short:short型(短整型)数据在内存中占用2个字节。
5、int:int型(整型)数据在内存中占用4个字节。
6、long:long型(长整型)数据在内存中占用8个字节。
7、float:float型(单精度浮点型)数据在内存中占用4个字节。(float精度为7-8位)
8、double:double型(双精度浮点型)数据在内存中占用8个字节。

引用类型:除了八种以外的基本类型都是引用类型:

引用类型又大概分为三种:

类,接口,数组;

一、类Class引用  

Object :Object是一个很重要的类,Object是类层次结构的根类,每个类都使用Object作为超类,所有对象(包括数组)都实现这个类的方法。用Object可以定义所有的类 如: 

Object object= new Integer(1);

来定义一个Interger类 

Integer i=(Integer) object;   
String :String类代表字符串,Java 程序中的所有字符串字面值(如"abc")都作为此类的实例来实现. 
同时也有对应的Class如:Integer  Long  Boolean  Byte  Character  Double  Float   Short 

二、接口interface引用 

List<E>:列表 ,此接口的用户可以对列表中每个元素的插入位置进行精确地控制。 List 接口提供了两   种在列表的任意位置高效插入和移除多个元素的方法。 
add() : 在列表的插入指定元素。 
remove():移除列表中指定位置的元素。 
get(int index):返回列表中指定位置的元素。
Map<K,V>: 
K - 此映射所维护的键的类型 
V - 映射值的类型 将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。 
put(K key,V value):将指定的值与此映射中的指定键关联(可选操作)。如果此映射以前包含一个该键的映射关系,则用指定值替换旧值(当且仅当,返回 true 时,才能说映射 m 包含键 k 的映射关系)。  remove(Object key)如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。更确切地讲,如果此 映射包含从满足(key==null ? k==null :key.equals(k))的键 k 到值 v 的映射关系,则移除该映射关系。(该映射最多只能包含一个这样的映射关系.) get(Object key):返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null。
这里我们主要是用String List Map Object 是最常用Number ArrayList<E> Arrays等 

三、数组引用

数组:存储在一个连续的内存块中的相同数据类型(引用数据类型)的元素集合。

数组中的每一个数据称之为数组元素,数组中的元素以索引来表示其存放的位置,索引(下标)从0开始。

数组的定义

第一种方式:类型[] 数组名; 如 int[] nums; 
第二种方式:类型数组名[]; 如 int nums[];
等等,如果想要更详细的一些简介可以去搜索,这里就不过多赘述了,

接下来讲述一下基本类型和引用类型的一个比较

当两个基本类型使用”==”比较时,他们比较的是
当两个引用类型使用”==”比较时,他们比较的是地址
当两个引用类型使用方法equals()比较时,他们比较的是

如果一个引用类型以恶搞基本类型呢?该如何比较

javaLong类型进行对比 java char对比_java

这里给大家拿char类型做个比较 

javaLong类型进行对比 java char对比_jvm_02

javaLong类型进行对比 java char对比_jvm_03

 

 总结:当比较基本类型和他的包装类(引用类型)使用”==”和方法equals()比较时,他们比较的都是