java
just_do_it_123
为兴趣而生
展开
-
Arrays.asList踩坑
一不小心在项目里用到了Arrays.asList,将一个数组转换成List了,结果在调用add的时候报java.lang.UnsupportedOperationException异常,之前只是在网上的其他资料里看到过不要使用Arrays.asList转换数组,没有具体去深挖为什么,没想到还真的碰到了这个问题。于是看了下Arrays.asList的源码 @SuppressWarnings("varargs") public static <T> List<T> asList(T...原创 2020-09-07 10:31:40 · 149 阅读 · 0 评论 -
java注解@SafeVarargs
自己写了一个工具方法 public class Maps { public static <K, V> HashMap<K, V> newHashMap(Entry<K, V>... entries) { HashMap<K, V> map = new HashMap<>(); for (Entry<K, V> entry : entries) { map.put(entry.getKey(),原创 2020-08-18 11:29:55 · 422 阅读 · 0 评论 -
达梦库查询字段信息(长度、精度、是否主键)
项目需要查询表的字段相关信息,包含名称、长度、精度、是否主键。查了半天达梦数据库的手册,感觉好绕啊,如果有更简单的方法请在评论里添加下,在这里记录下SQL @Select("select t1.column_name, t1.data_type, t1.data_length, t1.data_scale, t2.constraint_type from user_tab_columns t1" + "left join" + "(select t1.column_name, t1.tab原创 2020-08-11 17:15:23 · 5669 阅读 · 1 评论 -
实现一个通用的遗传算法框架
这两天写了一个比较通用的遗传算法框架common-geneticalgorithm,之所以写这个是因为以前每次需要用到遗传算法的时候总是手写一遍,从开始写代码起到现在估计至少写了不下20次了,有原创 2020-07-01 13:49:28 · 760 阅读 · 0 评论 -
betterplot-使用java绘制漂亮的统计图
花了大概一周的时间终于把这个包完成了,之所以会写这个包完全是因为在java里画图实在是太丑了,而且太不容易了。之前在用smile在做机器学习相关的事情,这个包说实话真的很好用,而且提供的DataFrame操作数据很方便,比kotlin的krangl包好用多了,就是画图的时候感觉很别扭,于是便有了写betterplot的想法,主要思路是通过echart.js在前端绘制图表,通过后端提供绘图api,但是通过http接口的形式来绘图还是比较麻烦的,于是我封装了后端的http接口,通过betterplot-api包原创 2020-06-30 10:37:36 · 695 阅读 · 0 评论 -
java 数组排序后返回索引
直接上代码 /** * 排序后返回索引 * @param v * @param <T> * @return */ static <T> int[] sortToIndex(T[] v) { Map<T, Queue<Integer>> indexMap = new HashMap<>(); for (int i=0; i<v.length; i++) { Queue<Integer> in原创 2020-06-06 21:17:37 · 1654 阅读 · 0 评论 -
大文件上传后端处理方法
前一篇文章写了大文件上传前端代码,现在记录下后端的处理思路。代码见 https://github.com/Mng12345/big-file-upload-backend 后台使用springboot实现,主要使用一个数组来判断文件是否完成上传,当每次上传一个信的文件时根据uid在缓存中新建或者将本次的文件块信息记录至缓存中 @Getter @Setter @Builder public static class FileInfo { // 路径 private String fileP原创 2020-05-21 16:29:39 · 1119 阅读 · 0 评论 -
ArrayList源码阅读
ArrayList类结构 int DEFAULT_CAPACITY = 10; Object[] EMPTY_ELEMENTDATA = {}; Object[] elementData; int size; // 初始化,将DEFAULTCAPACITY_EMPTY_ELEMENTDATA赋值给elementData public ArrayList() { this.elementD...原创 2019-11-01 14:35:32 · 124 阅读 · 0 评论 -
Spark远程调试记录
Spark远程调试记录实例代码maven依赖代码打包上传jar包开始远程调试启动Remote打断点调试 实例代码 public class TextSearch { public static void main(String[] args) { JavaSparkContext sc = new JavaSparkContext(); JavaRDD&l...原创 2019-08-15 15:25:22 · 238 阅读 · 0 评论 -
spark问题记录
1. Initial job has not accepted any resources; check your cluster UI to ensure… 解决方案:1.打开spark的UI界面,http://ip:8080/,查看Alive Workers数量。若为0则表明spark的worker未启动。 ...原创 2019-08-19 11:01:14 · 253 阅读 · 0 评论 -
java排序
针对一个200000大小的随机double数组进行排序 插入排序 对数组做for循环,每次找出当前位置到数组终点索引的最小值,与当前值比较并替换,时间复杂度n*n = O(n2)插入排序 200000 长度数组,耗时 :10.036s合并排序 将大数组分成两个小数组,依次递归分组,直到所有数组只有一个元素,然后,将数组按照顺序合并程大数组,依次合并得到最后结果,合并耗时O(n)原创 2017-08-11 15:17:35 · 414 阅读 · 0 评论