JAVA随笔记录

一、基本数据类型

整数型:byte、short、int、long

浮点型:float、double

字符型:char

布尔型:boolean

二、基本类型所占字节及位数

上面的默认值是指基本数据类型的引用类型的初始值。比如:int的引用类型是Integer,初始值为0.其他的类似。 

装箱和拆箱就是基本数据类型和引用数据类型之间的相互转换。

三、==和equals的区别

扫描二维码关注公众号,回复: 4163084 查看本文章

1.当==作用于基本数据类型时,比较的基本数据类型的值;当作用于引用类型时,比较的是引用类型对象所在的地址。

2.equals不能作用于基本数据类型;当作用于引用类型时,若引用类型没有重写equals方法,那么比较引用类型对象所在的地址;若引用类型重写了equals方法,那么比较的是对象所指向的内容。

四、类变量(静态变量)和实例变量(成员变量)的区别

1.类变量在内存中只存一份,只进行一次的初始化,在加载类的过程中完成类变量的初始化分配;实例变量属于实例对象的成员,每创建一个实例对象,都会为实例变量分配一次内存。

2.类变量存储在方法区;实例变量存储在堆中,它的引用存储在当前线程栈。

3.类变量是由static修饰的;实例变量不需要static修饰。

4.类变量在加载类的时候就加载完;实例变量只有在实例化对象的时候才会加载。

五、ArrayList和LinkedList的异同

1.它们都是List接口的实现类(Vector也是List接口的实现类)。

2.ArrayList是基于数组的数据结构;LinkedList是基于链表的数据结构。

3.当获取元素时,ArrayList比LinkedList的速度快。因为ArrayList可直接通过下标来获取,而LinkedList需要移动指针来获取元素。

4.当增加元素和删除元素时LinkedList的效率比ArrayList高,因为ArrayList对元素操作后要移动元素,而LinkedList只需要移动指针到指定位置即可。

猜你喜欢

转载自www.cnblogs.com/crazy-xf/p/9992176.html