随笔分类 -  Java

摘要:JAVA语言中有一些基本数据类型,比如int,long,double... 这些数据类型可以支持一些运算操作符,其中对于int类型的++/--操作符 Integer类型是一个对象类型,居然也可以支持++运算,那么问题来了 一个Integer对象执行++操作之后还是原来那个对象吗? 测试代码 publ 阅读全文
posted @ 2020-05-27 19:00 migoo 阅读(5214) 评论(1) 推荐(0)
摘要:工作中经常会出现一些模版代码,这些代码其实没有什么新鲜,都是老套的代码反复使用,比如在调用rpc方法之后的异常处理与日志打印,使用redis加锁与解锁,给一个线程插入log_id... 先说一下使用模版的好处 1. 编码速度 我们可以通过官方的实例看一下使用效果,输入几个关键字符就可以自动生成大段的 阅读全文
posted @ 2020-02-13 17:31 migoo 阅读(628) 评论(0) 推荐(0)
摘要:本题是比较典型的滑动窗口问题 这类问题一般通过一个滑动窗口就能在O(N)的时间复杂度下求解 本题可以先退化成考虑K=0的情况,此时题目就变成了求解字符串中最长连续子串长度问题了 我们先可以通过这个特例先了解一下滑动窗口的求解过程 上图的求解过程展示中,窗口从左至右不断扩张/滑动,当窗口触达字符串末尾 阅读全文
posted @ 2020-01-22 02:07 migoo 阅读(359) 评论(0) 推荐(0)
摘要:近日线上一个项目总是时隔1周发生OOM自动重启,问题很明显内存泄漏了。。。 使用jmap查看一下线上服务堆使用情况,实例最多的前10个类 这段代码是当时想要使用GZIP做解压缩从网上抄来了,当时只是用单测验证了一下这段代码的正确性,就上线了。 出现了内存泄漏问题之后,回过头来反思这段代码发现这里使用 阅读全文
posted @ 2019-10-28 20:49 migoo 阅读(2488) 评论(0) 推荐(0)
摘要:关闭时可使用如下代码 但是实际使用中,可能会出现即使使用了 方法,还是无法终止线程的问题,那是因为你的线程无法被中断 方法简单理解就是给在运行的线程发一个中断信号,如果你的线程忽略这个信号,那就无法停下来 举个例子来说明这个问题 从上面的测试用例可以看到 无法被 终止 然而 可以被正常终止,因为通过 阅读全文
posted @ 2019-06-20 23:44 migoo 阅读(1768) 评论(0) 推荐(0)
摘要:简洁优雅的快速排序实现 阅读全文
posted @ 2018-03-12 12:20 migoo 阅读(160) 评论(0) 推荐(0)