java
硕子.
这个作者很懒,什么都没留下…
展开
-
hashCode函数、equals函数、toString函数的作用
HashCode的作用: 哈希算法也称为散列算法,是将数据依据特定算法直接指定到一个地址上,作用当集合要添加新元素时,先调用这个元素的HashCode方法就一下可以定位到他应该放置的位置上。 1.如果这个位置上没有元素就直接存 2.如果右元素,就调用equals方法比较,相同不存。 3.不相同的话,也就是发生了Has key相同冲突的情况,这个时候就会产生一个链表,将所有产生HashCode的对象放到这个单链表上,串在一起。 equals: equals()比较的是同一个类型的两个不用对象里的属性是否都相等原创 2021-03-14 22:39:41 · 133 阅读 · 0 评论 -
快速排序原理与代码
1原理 我们必须首先确定一个基准数,使得序列中比基准数小的数都在左边,比基准数大的数都在右边。如何确定基准数?其实可以任意,不过一般取第一个数或者序列中间位置的数,我们这里取第一个数为基准数 public class QuickSort { public static void main(String[] args) { int[] nums = {3, 1, 4, 2, 5, 0}; quickSort(nums, 0, nums.length - 1);原创 2021-03-14 22:24:21 · 64 阅读 · 0 评论 -
String为什么用final修饰?
1.为了实现字符串池 首先你要理解final的用途,在分析String为什么要用final修饰,final可以修饰类,方法和变量,并且被final修饰的类不能被继承 不能拥有自己的子类,被final修饰的方法不能被重写. 为了”安全性“和”效率“的缘故。 final修饰的String,代表了String的不可继承性,final修饰的char[]代表了被存储的数据不可更改性 ** 2.为了线程安全** 因为字符串是不可变的,所以是多线程安全的,同一个字符串实例可以被多个线程共享。这样不用因为线程安全问题而使用原创 2021-03-14 21:06:15 · 1003 阅读 · 0 评论