- 博客(3)
- 收藏
- 关注
原创 hashmap的底层实现原理
hashmap map=new hashmap().在实例化以后,底层创建了一个entry类型的长度为16的数组,map.put(key value)执行这步操作时,首先计算key所在类的hashcode方法,计算key的哈希值,经过某种算法时,他会将key放在entry数组的某一个位置,如果这个位置上是空的,就添加成功,如果这个地方不是空的,就要比较这个位置上所有值的哈希值(这里采用的是链表结构,可以放多个元素),如果哈希值不相同,则添加成功,如果相同,就会调用equals方法,来比较上面元素
2022-04-02 22:11:08 260
原创 多线程创建的几种方法
一.利用一个继承于Thread类的子类来实现1.创建一个继承于Thread类的子类2.重写Thread类中的run()方法,run方法中是此线程将要执行的操作3.在main方法中创建Thread类的子类对象4.通过此对象调用start()方法(start方法就是启动当前线程,调用当前线程的run方法)二.利用Runnable接口的方式去实现1创建一个实现Runnable接口的类2.实现类中的run()方法3.创建类的对象4.将此对象作为参数传递到Thread类的构造器
2022-03-30 22:29:37 1319
原创 关于equals方法和==的区别
先说==在比较基本数据类型时,比较的是数据类型的具体大小,而在比较引用类型时,比较的是引用类型的地址。而equals方法只能比较比较引用数据类型,且在使用object中的equals方法中,他与==的作用想同,而string中却是比较内容,这是因为像String,Date,File类中,都重写了equals方法,而我们我们类中要想比较俩者的内容是否一样,就必须重写equals方法...
2022-03-28 22:13:58 64
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人