java小公举
衣冠の禽兽
资本主义压榨剩余劳动力来实现增值
展开
-
idea 中操作json文本 使用 jsonpath,过滤不包含某key的对象 and 与or操作
过滤不包含某key的对象:// 不包含test$.*[?(!@.TEST)]原创 2022-05-27 12:52:47 · 897 阅读 · 0 评论 -
替换字符串中 ${} 标识的变量
替换字符串中 ${} 标识的变量;记录一下以备不时之需import org.junit.Test;import java.util.HashMap;import java.util.Map;import java.util.regex.Matcher;import java.util.regex.Pattern;/** * @author WangZhenkun * @date 2021/10/11 14:51 */public class MyJavaTest { @T原创 2021-10-11 17:28:24 · 845 阅读 · 0 评论 -
jvm 开启远程调试,并使用idea进行连接测试
修改java启动命令:java -Xdebug -Xrunjdwp:transport=dt_socket,address=8800,server=y,suspend=n -jar wangsan-1.0.0-SNAPSHOT.jar参数解释:-XDebug 启用调试。-Xrunjdwp 加载JDWP的JPDA参考执行实例。transport 用于在调试程序和 VM 使用的进程之间通讯。dt_socket 套接字传输。server=y/n VM 是否需要作为调试服务器执行。address=原创 2021-10-09 11:53:07 · 1606 阅读 · 0 评论 -
spring项目循环依赖问题
spring已经解决循环依赖了,只是部分情况下spring不知道如何处理,所以抛出循环依赖;情况1:@Async注解所在的Bean被循环依赖了情况2:@Transactional注解所在的Bean被循环依赖了可参考:https://blog.csdn.net/f641385712/article/details/92797058...原创 2021-09-02 10:22:22 · 86 阅读 · 0 评论 -
排序二叉树&基本算法
定义:排序二叉树没有重复元素有序左子树的节点都小于当前节点右子树的节点都大于当前节点查找先与根节点比较,相同则返回大于根节点,在左子树中递归查找小于根节点,在右子树中递归查找遍历采用递归方式:1. 访问左子树2. 访问当前节点3. 访问右子树平衡二叉树(AVL树)定义:任何节点的左右子树的节点高度差最多为1红黑树定义:任意一条从根节点到叶子节点的路径,没...原创 2019-03-18 19:32:49 · 336 阅读 · 0 评论 -
Collections中的适配器和装饰器方法
草稿原创 2019-04-10 23:10:02 · 196 阅读 · 0 评论 -
Collections中的装饰器
装饰器,顾名思义就是用来装饰对象的。它会接受一个接口对象,并返回一个同样的接口对象,不过,新的对象可能会扩展一些新的方法或属性,扩展的方法或属性就是所谓的“装饰”,也可能会对原有的接口方法进行一些修改,达到一定的“装饰”的目的。Collections有三组装饰器方法,它们的返回对象都没有新的方法或属性,但改变了原有接口方法的ixngzhi,经过“装饰”后,它们更为安全具体分别是写安全、类型安全...原创 2019-04-11 21:58:01 · 200 阅读 · 0 评论 -
TreeSet的基本用法&实现原理
文章目录TreeSet的基本用法实现原理小结TreeSet的基本用法TreeSet有两个基本的构造方法: public TreeSet() { this(new TreeMap<E,Object>()); } public TreeSet(Comparator<? super E> comparator) { th...原创 2019-04-08 21:16:24 · 2045 阅读 · 0 评论 -
LinkedHashMap的基本用法&简单的LRU缓存
文章目录基本用法LinkedHashMap是HashMap的子类,但可以保持元素按插入或访问有序,这与TreeMap按键排序不同基本用法LinkedHashMap是HashMap的子类,但内部还有一个双向链表维护键值对的顺序,每个键值对既位于哈希表中,也位于这个双向链表中。LinkedHashMap支持两种顺序:一种是插入顺序;还有一种是访问顺序。插入顺序:先添加的在前面,后添加的在后面...原创 2019-04-08 22:00:04 · 546 阅读 · 0 评论 -
PriorityQueue实现:求前N个最大的元素
package utils;import java.util.Collection;import java.util.PriorityQueue;public class TopN<E> { private PriorityQueue<E> p; // 使用最小堆实现,根节点是最小的节点 private int k; public Top...原创 2019-04-15 22:09:25 · 1422 阅读 · 0 评论 -
LinkedHashMap的实现原理
文章目录内部组成内部组成LinkedHashMap继承了HashMap,内部增加了如下实例变量:transient LinkedHashMap.Entry<K,V> head;transient LinkedHashMap.Entry<K,V> tail;final boolean accessOrder;accessOrder表示按访问顺序还是插入顺序。...原创 2019-04-09 23:13:03 · 716 阅读 · 0 评论 -
java中的字节流(二进制方式读写的流)
文章目录java中以二进制方式读写的流主要有:1. InputStream/OutputStream1.1 InputStreamjava中的文件流主要分为两大类,一类按照二进制的方式处理文件;另一类按照文本的方式处理;其中,按照二进制方式进行处理的时候没有编码的概念,也不能进行行处理java中以二进制方式读写的流主要有:InputStream、OutputStream:这是基类,他们是...原创 2019-04-17 23:39:57 · 6817 阅读 · 0 评论 -
IDEA 报错:not supported at language level "5"
今天使用IDEA新创建了一个Maven项目,在使用try内包含流,这种语法的时候,一直报错:“try-with-resource are not supported at language level “5” ”在这里总结一下解决方式:一开始以为我的IDEA项目的jak版本不对,但是检查了一下发现没得问题:后来经过百度,发现还有一个配置编译时版本的地方3.改了这个地方之后还是不行...原创 2019-08-18 17:41:20 · 6551 阅读 · 5 评论 -
HashMap:内部组成&put:、get、remove方法大致逻辑&总结
源码基于java1.8一、传统 HashMap的缺点(1)JDK 1.8 以前 HashMap 的实现是 数组+链表,即使哈希函数取得再好,也很难达到元素百分百均匀分布。(2)当 HashMap 中有大量的元素都存放到同一个桶中时,这个桶下有一条长长的链表,这个时候 HashMap 就相当于一个单链表,假如单链表有 n 个元素,遍历的时间复杂度就是 O(n),完全失去了它的优势。(3)针...原创 2019-03-12 20:32:36 · 985 阅读 · 0 评论 -
TreeMap的基本用法&实现
TreeMap是使用红黑树实现的,他是按键有序的。红黑树:从根到叶子节点的路径,没有任何一条路径的长度会比其他路径长过两倍。红黑树把每个节点进行重色,对节点颜色有一些约束。它确保树是大致平衡的。基本构造方法:/*** 该方法要求Map中的键必须实现Comparable接口,TreeMap进行各种个比较时会调用键的Comparable接口中的compareTo方法*/ public Tr...原创 2019-03-21 10:00:20 · 3811 阅读 · 1 评论 -
list和以逗号分割的String相互转换(guava)
谷歌guava之list与String转换import com.alibaba.fastjson.JSON;import com.google.common.base.Joiner;import com.google.common.collect.Lists;import com.google.common.base.Splitter; List<String&g...原创 2018-08-06 19:48:43 · 12170 阅读 · 4 评论 -
JAVA8 Map新方法:compute,computeIfAbsent,putIfAbsent与put的区别
本文参考自:Java8(3):Java8 中 Map 接口的新方法 不管存不存在key,都设值:putput返回旧值,如果没有则返回null @Test public void testMap() { Map&amp;amp;lt;String, String&amp;amp;gt; map = new HashMap&amp;amp;lt;&amp;amp;gt;();原创 2018-08-29 19:50:14 · 26322 阅读 · 5 评论 -
HashMap和HashSet笔记(内部结构&使用场景)
《java编程的逻辑》读书笔记HashMap主要实例变量:transient Entry&lt;K,V&gt;[] talbe = (Entry&lt;K,V&gt;[]) EMPTY_TABLE; // 称为哈希表或哈系桶,其中每个元素指向一个单向链表,链表中每个节点表示一个键值对。transient int size; // 键值对个数int threshold; // 阙值,...原创 2018-09-26 20:24:54 · 3490 阅读 · 1 评论 -
排序二叉树和TreeMap&TreeSet——读书笔记
二叉树就不多说了,这里记录一下平衡二叉树——AVL和红黑树的定义平衡的排序二叉树——AVL:任何节点的左右子树高度差最多为1.满足这个平衡定义的排序二叉树被称为AVL,这个名字源于它的发明者XXXXXX红黑二叉树:红黑树也是一种平衡的排序二叉树,但它不是高度平衡,而是大致平衡。它确保任意一条从根到叶子节点的路径,没有任何一条路径的长度会比其他路径长过两倍。在实际应用中,统计性能要高...原创 2018-09-28 09:30:17 · 396 阅读 · 0 评论 -
ArrayDeque——循环数组之找下一个元素的正确位置
ArrayDeque——循环数组之找下一个元素的正确位置内部的实例变量:private transient E[] elements; // 用于存储元素的数组privata transient int head; // 头privata transient int tail; // 尾如果用transient声明一个实例变量,当对象存储时,它的值不需要维持。换句话来说就是,用tra...原创 2018-10-08 09:13:37 · 511 阅读 · 0 评论 -
LinkedHashMap基本用法&使用实现简单缓存
LinkedHashMap——读书笔记《Java编程的逻辑》读书笔记1. 基本用法LinkedHashMap是HashMap的子类,但是内部还有一个双向链表维护键值对的顺序,每个键值对既位于哈希表中,也位于双向链表中。LinkedHashMap支持两种顺序插入顺序 、 访问顺序插入顺序:先添加的在前面,后添加的在后面。修改操作不影响顺序访问顺序:所谓访问指的是get/put操作,对一...原创 2018-10-16 09:10:28 · 38072 阅读 · 0 评论 -
枚举
枚举1. 基础定义:public enum Size { SAMLL, MEDIUM, LARGE}简单使用: public static void main(String[] args) { Size size = Size.SAMLL; System.out.println(size.toString()); // SAMLL ...原创 2018-10-19 09:17:06 · 139 阅读 · 2 评论 -
转:java 泛型详解-绝对是对泛型方法讲解最详细的,没有之一
原文链接:https://www.cnblogs.com/coprince/p/8603492.html对java的泛型特性的了解仅限于表面的浅浅一层,直到在学习设计模式时发现有不了解的用法,才想起详细的记录一下。本文参考java 泛型详解、Java中的泛型方法、 java泛型详解概述泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常广泛的应用。什么是泛型?为什么...转载 2018-12-20 11:58:50 · 240 阅读 · 0 评论 -
java try()的括号中代码含义
try的括号中所有实现Closeable的类声明都可以写在里面,最常见的是流操作,socket操作等。括号中可以写多行语句。多行语句的示例:try( InputStream is = new FileInputStream("d:/teacher/youyuan.avi"); OutputStream os = new FileOutputStream("d:/student/shuang...转载 2018-12-23 23:39:43 · 7220 阅读 · 2 评论 -
Java 静态域,构造块,构造方法 加载顺序
父类静态域–&amp;gt;子类静态域–&amp;gt;父类构造块–&amp;gt;父类构造方法–&amp;gt;子类构造块–&amp;gt;子类构造方法原创 2019-02-20 17:43:37 · 210 阅读 · 0 评论 -
HashSet
与HashMap相同,HashSet也要求元素重写hashCode和equals方法,且对于两个对象如果equals相同,则hashCode也必须相同,如果元素是自定义类,需要注意这一点。HashSet的应用场景:1、 排重2、 保存特殊值,比如保存用户黑白名单,来判断用户是否有某权限3、集合运算,,set可以方便的进行交集,并集等运算HashSet的内部实现HashSet内部是用一个...原创 2019-03-14 19:53:29 · 94 阅读 · 0 评论 -
Map方法总结
java8中Map有如下方法:原创 2019-03-11 20:15:05 · 123 阅读 · 0 评论 -
java读取resource下的json配置文件
本实例在maven项目中,只能获取resource目录下的json配置文件,package com.xxx.util;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import com.google.common.base.Charsets;import com.google.commo...原创 2018-08-01 17:25:24 · 7584 阅读 · 2 评论