专业编程基础技术教程

网站首页 > 基础教程 正文

Java学习之基本数据类型 java基本数据类型的使用

ccvgpt 2024-11-06 16:54:10 基础教程 12 ℃

数据类型

基本类型:int,bool,float,double,short,long,char,byte

对象类型:String,Integer,BigDecimal

Java学习之基本数据类型 java基本数据类型的使用

String,StringBuffer,StringBuilder 差别

类型

可变

线程安全

备注

String

不可变

安全

每次更改会产生新的内存地址

StringBuffer

可变

安全

操作当前内存

StringBuilder

可变

不安全

操作当前内存

Equal与==的区别

==原则:

基本类型:对值进行判断是否相等

对象类型:对引用进行判断是否相等(内存地址)

Equal原则:

基本类型没有equal方法,对象类型才有;对象类型的equal方法本质上与==等效,但许多类重写了equal方法,变成了值判断;

所以使用equal 方法要明确每个类型对equal方法的实现;有些自定义类的判断看是否要重载;


HashCode与Equal关系

equal相等,hashCode 必定相等;反之hashCode相等,equal不一定相等;

jvm管理对象的原理是把对象放入hash表中;那两个对象的hashcode相等只表明了两个对象hash值一致,存储在同一条链上,但内容或内存不一定一致,所以有以上结论。

最终如果重写了equal方法,最好也重写一下hashCode方法;

思考:HashCode效果?

传送门:https://blog.csdn.net/seu_calvin/article/details/52094115

Java集合

Java Array

固定长度,提供了Arrays工具类型来操作array

Java容器

类型区分:Collection,Map两大类型

Collection

提供iterator来遍历,提供Collections工具类型来操作Collection

分类

名称

线程安全

元素有序

元素重复

备注

List

ArrayList


LinkedList


Vector


Stack

继承自Vector

Set

HashSet


LinkedHashSet

TreeSet

Map

分类

名称

线程安全

元素有序

元素重复

备注

HashMap

HashMap

key不可重复;value可重复


LinkedHashMap


HashTable

HashTable

保留类

TreeMap

TreeMap

是(key)



线程安全:一般情况下都使用java.utils.concurent下的数据类型

最近发表
标签列表