- 博客(5)
- 资源 (1)
- 收藏
- 关注
原创 LinkedBlockingQueue实现去重机制
上面的示例代码实现了一个去重的LinkedBlockingQueue,它通过重写add()和put()方法来实现去重机制。同时,在添加元素时更新队列的count变量。注意在add()方法中必须使用synchronized关键字来保证线程安全,而put()方法本身就是线程安全的,所以不需要额外的同步机制。2、在add()和put()方法中,首先对队列中是否已经存在该元素进行判断,如果存在则不添加到队列中,否则添加到队列中。4、在去重的情况下,由于元素数量的变化,需要在添加元素时更新队列的count变量。
2023-03-16 16:51:13
1313
2
原创 HashMap
1、HashMap为什么是无序的?HashMap源码629行if ((p = tab[i = (n - 1) & hash]) == null) n:数组长度 hash:元素hash值 tips:Integer类型的hash值是它本身 tab:数组 i =(n - 1) & hash :如果n=16(HashMap默认值) 则 i 的取值范围为[0,15] 所以说 如果当前hash=16 则i = 0;则p被放入 tab[0]的链表或红黑树节点中2、HashM
2021-03-12 17:07:38
106
原创 关于获取路径下所有class文件
关于获取路径下所有class文件(最终目的:获取包下所有的类的全类名)通过类加载器的getResource方法获取指定目录下的resourceEnumeration<URL> resources = classLoader.getResources(pathName);//pathName = "com/xxx/xxx"1、遍历resources获取url while (resources.hasMoreElements()) { URL url = resources.n
2021-01-27 18:41:22
3890
原创 关于SpringBoot的排序原理
SpringBoot的加载排序:一、总体根据Order值大小,越小则优先级越高(范围:int的最小值——int最大值)(默认值为:int的最大值)二、SpringBoot排序实现步骤:(AnnotationAwareOrderComparator类)先查找是否是PriorityOrdered接口(优先级最高)查找该类自己的Order值【实现Ordered接口,调用getOrder方法】查找注解@Order的值三、如果同时实现Ordered接口 和 @Order注解,应该取接口的值...
2020-12-28 15:57:37
1248
原创 关于List排序通用方法
记录:通过反射技术获取需要排序的字段。一般是JavaBean,所以需要设置访问权限。根据该字段的内的排序方法来排序。如果字段属性类型是JavaBean的话,建议手写排序方法。该方法有严格的要求 必须是int 类型的返回值和只有一个参数的方法。该参数必须是同类型。根据JDK一般提供的 compareTo方法得来(在String 中、 Date中都会有这样一个方法)。```java /** * 数组排序 * @param list 传入的数组 * @param
2020-11-18 18:01:20
169
用eclipse在Maven基础上使用Jsoup+MYSQL+MyBatis+jsp实现网络小说抓取以及前端展示
2019-05-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人