12 2017 档案

摘要:背景:今天有这么一个需求就是叶节点数量只有一个而且深度太深造成了用户反感,需要缩减深度。 最终目标:1’替换2,2’替换4,3’替换8 数据结构:父节点持有子节点的list,子节点持有父节点的id,不是父节点本身,这样是因为循环引用在转json时会造成麻烦。 阅读全文
posted @ 2017-12-20 10:43 GTM_AI编程 阅读(554) 评论(0) 推荐(0)
摘要:今天熟悉stream时遇到一个问题: 报错 查看源码发现调用的Optional.of(),不可以放空值 这样倒是可以不报错 但是想不明白,不让放空值这个findFirst()方法返回Optional的意义何在呢? 归根结底有Optional.ofnullable,为什么有Optional.of这种不 阅读全文
posted @ 2017-12-04 19:50 GTM_AI编程 阅读(4996) 评论(0) 推荐(0)
摘要:为什么保证了可见性而不能线程安全。 场景: volatile修饰的x 多线程进行x++ x++是非原子操作分三个步骤: (1)读取x的值 (2)计算x值+1 (3)写入x的值到内存 假设:线程一执行完(2)算出了值后被阻塞 线程二执行完三个操作后将结果写回内存,由于线程一已经算出结果不会再去读取x的 阅读全文
posted @ 2017-12-03 11:05 GTM_AI编程 阅读(932) 评论(0) 推荐(0)