java开发那些事(持续完善中)
【代码】java开发那些事(持续完善中)
·
- 唯一值问题
- UUID:随机且无序
- 数据库自增主键不适应分布式环境
- redis全局id策略:使用INCR和INCREBY进行原子性的增加
- 雪花算法:全局唯一顺序
- 按照时间顺序生成
- 生成一个64bit的整数,转化为long类型的(最大19位)
- 分布式系统不会出现id碰撞(datacenter和workID做区分)
- hutool提供了IdUtil工具类
- 自定义分页方法
List<A> aLists = new ArrayList<A>();
int currIdx = (pageNumber > 1 ? (pageNumber -1) * pageSize : 0);
for (int i = 0; i < pageSize && i < inventoryList.size() - currIdx; i++) {
A a = lists.get(currIdx + i);
aLists .add(a);
}
- java提供的二分法
- public static int binarySearch(List<? extends Comparable<? super T>> list, T key)
- 从数组中找出匹项的下标
- list:必须是从小到大顺序排序,否则查询结果有误
- public static int binarySearch(List<? extends Comparable<? super T>> list, T key)
- HashMap加载因子的作用
- 过大的加载因子会造成hash冲突虑增大,影响性能,过小的加载因子会造成数据稀疏,空间浪费
- List lists = ImmutableList.of( “内容” ) 将 此字段放入List中
- StringUtils.strip(factoryNameSet.toString(), “[ ]”) 去掉 字符串中的 [ ] (去掉字符串中的某些元素)
- java实现内容拼接
- String finalString = Joiner.on(“,”).join(“四川省”,“成都市”,“金牛区”).toString()
- 日期转为美国格式
- DateTimeFormatter format = DateTimeFormat.forPattern(“MMM dd, yyyy”).withLocale(Locale.US); Sep 05,2018
- 异常Throwable和Exception
- Throwable是Error和Exception的父类,用来定义所有可以作为异常被抛出来的类
- Error是编译时错误和系统错误
- Exception则是可以被抛出的基本类型
- RunTimeException:运行时异常,又称不受检查异常,只会在运行时抛出异常
- Exception:编译时异常,编译阶段会检查代码异常和可能出现的错误
- Throwable是Error和Exception的父类,用来定义所有可以作为异常被抛出来的类
- collection was evicted
- 多对多或者一对多的情况下,会出现问题,将Set修改为List
- Stream流根据对象属性去重
- List collectSet = collects.stream().collect(collectingAndThen(toCollection(() -> new TreeSet<>(comparingLong(Collect::getId))), ArrayList::new))
- 集合重新随机排序
- Collections.shuffle(mapList);
- 灰度发布 :又名金丝雀发布
- 允许分多个 特性分别共 不同用户体验,最终结合。例如:一部分用户体验第一版,另一部分升级版本,最终完善全部转为升级版
- 常见的MIME类型
超文本标记语言文本 .html,.html text/html
普通文本 .txt text/plain
RTF文本 .rtf application/rtf
GIF图形 .gif image/gif
JPEG图形 .ipeg,.jpg image/jpeg
au声音文件 .au audio/basic
MIDI音乐文件 mid,.midi audio/midi,audio/x-midi
RealAudio音乐文件 .ra, .ram audio/x-pn-realaudio
MPEG文件 .mpg,.mpeg video/mpeg
AVI文件 .avi video/x-msvideo
GZIP文件 .gz application/x-gzip
TAR文件 .tar application/x-tar
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)