- 博客(146)
- 资源 (2)
- 收藏
- 关注
原创 mybatis批量插入实体,并返回主键到实体id上
1.mybatis版本要在3.3以上,低版本的要排除2.批量插入sql 要有 useGeneratedKeys=“true” keyProperty=“id”<insert id="batchSaveActivityPoolVersion" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id"> insert into pe_activity_pool_version (pool_id, po
2020-11-27 09:44:14
998
原创 java集合类与stream流结合使用操作总结
目录将字符串转换为整型集合将列表转为MapList集合删除另一个集合元素将字符串转换为整型集合String productIds = "121,222,233,11,13333,111";String[] productIdsArray = StringUtils.split(productIds,",");List<Integer> productIdList = Lists.transform(Arrays.asList(productIdsArray), s -> Integ
2020-10-30 18:14:05
399
原创 java数字类操作使用总结
目录BigDecimal使用总结DecimalFormat使用总结BigDecimal使用总结 错误用法:小数传给BigDecimal建议不要使用double类型,可能会存在数据丢失。建议使用字符串方式传值。 double a = 0.1 double b = 0.3; BigDecimal bigDecimalA = new BigDecimal(a); BigDecimal bigDecimalB = new BigDecimal(b); 正确用法: B
2020-10-30 18:08:18
257
原创 java日期操作类用法总结
日期类建议使用org.joda.time包下的。几种用法将时间2020-08-07 00:00:00类似日期输出为 2020-08-07将当前时间输出为指定格式的时间解析日期格式为yyyyyMMdd的时间得到某日是周几将某一天加上一定天数将某一天减去一定天数将某个日期加上一定天数,得到那一天的零点,在减去1秒获取今天的开始时间(最小时间)获取今天的最大时间将时间2020-08-07 00:00:00类似日期输出为 2020-08-07DateTimeFormatter dateTimeFormatte
2020-10-30 17:54:54
328
原创 Java对象所占内存的大小及HSDB工具的使用
JDK自带的Hotspot Debuger工具——HSDB的使用,透过它能够让我们更直观的查看运行中的java对象在内存中的存在形式和状态,如对象的oops、类信息、线程栈信息、堆信息、方法字节码和JIT编译后的汇编代码等。通过HDSB帮助我们查看一个java对象的所占的内存。1、在jdk安装目录home文件夹下执行命令:jps可以得到运行中的java进程号2、.在jdk安装目录下的lib文件夹下执行命令:java -cp sa-jdi.jar sun.jvm.hotspot.HSDB启动H
2020-10-30 17:25:15
654
原创 Java定时任务实现方式
实现方式:TimerTaskScheduledExecutorService线程的等待TimerTask new Timer("timer - " + i).schedule(new TimerTask() { @Override public void run() { println(Thread.currentThread().getName() + " run "); } },
2020-10-30 17:10:01
187
原创 mac如何上传文件到linux服务器
scp /Users/koolearn/settings.xml root@xx.xx.xx.xx:/yuyuscp:命令/Users/koolearn/settings.xml :本地文件地址root@xx.xx.xx.xx :远端服务器用户名@ip:/yuyu :远端服务器文件夹路径...
2020-10-30 15:48:02
1253
原创 IDEA编译器常见错误总结
1、配置spring的xml文件时元素 ‘tx:advice’ 中不允许出现属性 'transaction-manager’或者是 XX is not allow here.解决方法:IDEA自动生成的Spring XML配置文件引用的xml约束不对,可去官网找到 相关引用的约束。2、Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘dataSource’:
2020-10-20 09:52:11
853
原创 IDEA将单个类输出为jar包并且执行
1.首先进入项目的Project Settings点击Artfacts,点+号,为jar包命名,然后在hello.jar下,建立多个文件夹,结构为对应类的包结构(不建立包结构运行时提示找不到类),在最后一层包结构下,点旁边+号里的file,得到对应类的class文件。回到hello.jar点击create Manifest…最后应用2.点击build,选hello->build,构建完成2.cmd,进入jar包目录下(如果提示error unable to access jarfile
2020-08-27 23:50:08
654
原创 github-GPG公私钥生成
1.打开 Git bash here2.按图输入得到公私密钥3.公钥查看gpg --list-keypub为公钥uid为你用户名 邮箱sub为私钥4. 私钥查看gpg --list-secret-keys5.公钥导出gpg -a --export 公私钥生成的用户-----BEGIN PGP PUBLIC KEY BLOCK-----..............................................................-----END PG
2020-08-01 13:16:42
970
原创 windows系统上传文件到阿里云linux服务器
1.安装putty,打开安装目录,找到psftp.exe打开2.psftp: no hostname specified; use “open host.name” to connectpsftp> open 47.94.218.52*(服务器ip)*login as: root*(用户名)*root@47.94.218.52’s password: (输入密码)Remote working directory is /root (告诉你此时服务器目录)psftp> put
2020-07-23 00:06:57
1136
原创 牛客剑指offer66题汇总(三)
51.请实现一个函数用来匹配包括’.‘和’‘的正则表达式。模式中的字符’.‘表示任意一个字符,而’'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"abaca"匹配,但是与"aa.a"和"ab*a"均不匹配public class Solution { public boolean match(cha...
2019-09-12 17:02:43
218
原创 用中序遍历和后序遍历,得到前序遍历
问题:给出一个二叉树的中序遍历和后序遍历结果,求前序遍历结果输出第一行:中序遍历结果第二行:后续遍历结果前序遍历结果样例输入:dgbaechfgbdehfca样例输出:adbgcefhimport java.util.*;public class Main{ static class TreeNode{ TreeNode left; TreeNode ri...
2019-09-12 15:46:27
608
原创 牛客剑指offer66题汇总(二)
31.输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。import java.util.ArrayList;import java.util.*;public class Solution { publ ·4tring PrintMinNumber(int...
2019-09-12 14:51:24
415
原创 牛客剑指offer66题汇总(一)
1.题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。public class Solution { public boolean Find(int target, int [][] array) { if(array =...
2019-09-12 12:49:27
285
原创 二分查找类算法题
1.假设一个按升序排序的数组在您事先不知道的某个轴上旋转。假如{0,1,2,3,4,5,6,7}可能变为{4,5,6,7,0,1,2},你被给定一个值去搜索,如果找到返回这个值的下标,否则返回-1。假设数组中的数没有重复的,算法复杂度要达到logn.Example 1:Input: nums = [4,5,6,7,0,1,2], target = 0Output: 4Example 2:...
2019-09-10 14:52:46
171
原创 Map集合遍历的5种方式
Map<Integer,Integer> map = new HashMap<Integer,Integer>();1.keyset valuesfor(Integer key:map.keySet()){System.out.println(key);}for(Integer value:map.values()){System.out.println(val...
2019-09-07 12:21:18
150
原创 带障碍的迷宫路径问题
问题:一个二维矩阵n*m,中间有许多障碍点,从点(0,0)出发,问到达(n-1,m-1)所有的路径有多少条,障碍点不能经过。输入n m k,表示矩阵行列值以及障碍点的个数,接下来k行表示输入障碍点的位置。输出路径条数。public class Main{ static int res = 1; public static void main(String[] args) {...
2019-09-03 23:00:09
1040
原创 找出数组中重复的数
在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。统计数组中所有重复的数。例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。public class Main { public static void main(String[] args) { ...
2019-08-31 18:13:35
266
原创 统计一个字符串包含另一个字符串的个数
例如:s1=“ababa”s2=“aba”s1中包含s2中子串的个数为2。第一种做法:就是直接循环遍历s1,每次在s1中裁剪s2长度的字符与s2比较,这种方式缺点是每次计数加1,效率太低。调用String 的indexOf可以统计出s2的初始位置,并且可以指定开始位置,可是开始位置如果每次加s2串的长度,如上,那么结果就是1,显然不对。调用这个方法就不能每次+1了,关键是下次的初始位置...
2019-08-30 21:58:54
3531
原创 字典树学习
字典树是一种树形结构,优点是利用字符串的公共前缀来节约存储空间,比如加入“inn int tea ton"之后的字典树,如下:字典树的基本性质如下:根节点没有字符路径。除根节点外,每一个节点都被一个字符路径找到。从根节点到某一节点,将路径上经过的字符连接起来,为扫过的对应字符串。每个节点向下所有的字符路径上的字符都不同。问题如下:实现字典树结构,包含以下四个主要功能:void in...
2019-08-24 14:17:00
243
原创 Java中a+b溢出了怎么办?
转载链接:https://blog.youkuaiyun.com/qq_33330687/article/details/81626157前天参加腾讯的后台面试,问我 a,b交换值,不用第三个变量怎么办回答如下:1.异或a= a^bb = a^b;a = a^b;a = a+b;b = a -b;a = a-b;问题来了?问 a+b会不会溢出呢,答:会问 溢出了怎么办呢 答:不...
2019-08-24 12:37:44
606
原创 Java实现生产者和消费者的5种方式
转自https://blog.youkuaiyun.com/wowwilliam0/article/details/80875673面试的时候会让手撕,生产者消费者模式,生产者消费者模式,涉及线程同步与通信的问题。实现方式有wait/notify|notifyAllReetrantLock锁阻塞队列信号量Semaphore管道输入输出流wait()和notify()方法的实现package ...
2019-08-24 10:28:52
635
原创 将单链表的每K个节点之间逆序
链表 1 2 3 4 5输入 K=2 ,要反转成 2 1 4 3 5public Node reverse(Node head,int k) { if(head == null || k<2) return head; Node pre = null; //pre开始是K个节点中第一个节点的前一个节点 Node start = null;//start是K个节点的第一个节点...
2019-08-24 09:40:28
399
原创 找到数组中距离目标值最近的数组下标
在一个非递减数组中,找到距离目标值,最近的数组索引。如 1 2 3 6 7 8 ,目标值为4返回 2思路:可以理解为 先用二分法找到这个目标值,如果找不到,那么就找它应该插入的顺序,判断插入顺序两边的元素谁和目标值近。public class Main { public static void main(String [] str){ int [] array = {1,5}...
2019-08-23 17:01:52
1993
2
原创 单链表部分逆置
输入一个链表,两个正数n,m表示逆置的范围,输出部分逆置后的链表public class Main { static class Node{ Node next; int val; public Node(int val) { this.val = val; } } public static void main(String [] str){ Node n1...
2019-08-23 16:12:47
309
转载 求完全二叉树的最大深度与节点个数,要利用完全二叉树的特性
给定一棵完全二叉树的根节点root,返回这棵树的节点个数。如果完全二叉树的节点数为N,请实现时间复杂度低于O(N)的解法。给定树的根结点root,请返回树的大小。二分的思想。看完全二叉树的最后的最右一个节点的位置思路:1 找到完全二叉树的最左节点,也就是求左子树的深度2 找到完全二叉树头节点右子树中的最左节点,记录右子树深度3 如果两个深度相等,说明头节点左子树是一棵满二叉树,使用公式求...
2019-08-20 17:35:44
3819
原创 解压缩字符串
题目描述 猿辅导APP需要下发一些宣传文本给学生,工程师们使用了一种字符压缩算法,为了简单起见,假设被压缩的字符全部为大写字母序列,A,B,C,D,E……Z,压缩规则如下:1. AAAB 可以压缩为 A3B(单字符压缩不加括号)2. ABABA 可以压缩为 (AB)2A (多字符串压缩才加括号)输入数据保证不会出现冗余括号,且表示重复的数字一定合法且大于1,即不会出现:(A)2B --...
2019-08-20 10:59:14
1434
原创 http状态码总结
1**:请求已接收,继续处理2**:成功3**:重定向4**:客户端错误5**:服务器错误常见的状态码:100 (继续) 请求者应当继续提出请求。服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。200 (成功) 服务器已成功处理了请求。...
2019-08-19 22:14:59
120
原创 字符串相乘
示例 1:输入: num1 = "2", num2 = "3"输出: "6"示例 2:输入: num1 = "123", num2 = "456"输出: "56088"说明:num1 和 num2 的长度小于110。num1 和 num2 只包含数字 0-9。num1 和 num2 均不以零开头,除非是数字 0 本身。不能使用任何标准库的大数类型(比如 BigInteg...
2019-08-12 17:35:45
301
原创 final关键字理解与双重锁机制的优化
常见的解释,final修饰类,类不能被继承final修饰方法,方法不能被重写final修饰变量,表示常量但看了《java并发编程的艺术》后,发现final还有别的作用:final域的内存语义:3.6.1 final域,编译器和处理器要遵守两个重排序规则:1.要构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用变量,这两个操作之间不能重排序。2.初次读一个...
2019-07-24 17:12:13
502
原创 如何求有序数组绝对值最小的数
问题:有一个有序数组,如何求绝对值最小的数。形如:-10 -5 -2 7 15 20, 绝对值最小为-2思路:1。没有正数的情况下,最右边就是绝对值最小的2。没有负数的情况下,最左边就是绝对值最小的。3。有正数负数有0的情况下,找到04。只有正数负数的情况下,找到分界点public static int getMinAbsoluteValue(int[] a) { if(a ...
2019-07-13 22:58:00
1020
原创 用java实现LRU
1.用双向链表+HashMappackage cn.LRU;import java.util.HashMap;/**1.新建一个LRUCache类,里面维护一个HashMap,保存数据2.维护一个链表,当数据每一次命中就将数据放到链表的head,当有新数据添加时也放到head。这样链表的尾部就是最近最久未使用的,每次容量不足时就可以删除tail,显然这是一个双向链表结构,因此我们定义...
2019-07-12 23:16:37
770
原创 两个数值交换的5种方法
1.中间变量法int a,b;int temp = a;a = b;b = temp;2.加减法a = a+b;b = a- b;a = a-b;3.异或法a = a^b;b = a^b;a = a^b;4.乘除法a = a * b; b = a / b; a = a / b; (b不为0)5.赋值法(两种)a = (a+b)-(b=a)a= (b)+(b...
2019-07-06 16:51:05
3050
Verilog-AMS语言参考手册
2018-08-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人