集合判断为空 做了非空判断
org.springframework.util.CollectionUtils#isEmpty(java.util.Collection<?>)
spring的工具类 为了防止实例化大多是抽象的。我写的大部分工具类只是私有构造方法,可以采用类抽象防止实例化。
对于流收集多个字段,没有百度到,就自己写个吧。
思路先将流中的多个字段放到一个数组中进行升维,而后进行降维,再用收集器进行收集,这样就可以收集多个字段。
StopWatch可以计算代码运行时间,但是重复调用start方法会报异常,最好在方法结束后关闭。
编译分为静态编译,动态编译,为了提高运行效率JAVA引入JIT编译对代码进行编译优化,多线程下可能会造成跟预想的结果不一致,启动的时候加上命令禁止JIT,或者在局部变量加上volatile,防止指令重排序。(官方介绍是禁止缓存。)