树形对象,自身嵌套的(Java8):

类: A , 里面包含一个LinkedList 的 A 的子对象集合

public class A implements Serializable {

A(String inId){

this.id=inId;

}

String id="";

public String getId() {

return id;

}

public void setId(String id) {

this.id = id;

}

LinkedList children = new LinkedList<>();

public LinkedList getChildren() {

return children;

}

public void setChildren(LinkedList children) {

this.children = children;

}

}

初始化数据,试验用: 多层嵌套对象, a里面可以嵌套n层子:

A a = new A("1");

A b = new A("11");

A c = new A("12");

A d = new A("111");

A e = new A("121");

A f = new A("1211");

a.getChildren().add(b);

a.getChildren().add(c);

b.getChildren().add(d);

c.getChildren().add(e);

e.getChildren().add(f);

初始化一个List只包含a:

List orders = new ArrayList<>(Arrays.asList(a));

扁平化处理,返回所有对象的List:

List result = orders.stream()

.flatMap(new Function>() {

@Override

public Stream apply(A a) {

return Stream.concat(

Stream.of(a),

a.getChildren().stream().flatMap(this::apply));

}

})

.distinct()

.collect(Collectors.toList());

java 对象嵌套_java如何把嵌套的对象装入集合?相关推荐

  1. java图片序列化_Java中的强大武器——对象的序列化

    原标题:Java中的强大武器--对象的序列化 所谓对象序列化就是将对象的状态转换成字节流,以后可以通过这些值再生成相同状态的对象.这个过程也可以通过网络实现,可以先在Windows机器上创建一个对象, ...

  2. java技术难点_Java核心技术第四章----对象与类重难点总结

    一.类之间的关系 类和类之间的关系,耦合度从高到低: is -a.继承.实现 has-a.组合.聚合.关联 user-a.依赖. 要求是:高内聚.低耦合. 继承("is-a") 继 ...

  3. java null 对象吗_java中new一个对象和对象=null有什么区别

    原创:转载请注明出处 今天在写代码时,遇到一个问题,特此进行记录. for (ProfileDto profileDto : profile) { // Profile resProfile=null ...

  4. java swing 多层_java swing布局嵌套

    小菜一枚,刚接触Java,想写个注册界面,但却遇到一个奇怪问题:代码如下: public void frame() { this.frame = new JFrame("用户注册" ...

  5. java布局器嵌套_java swing布局嵌套

    public void frame() { this.frame = new JFrame("用户注册"); //窗体基本属性 this.frame.setSize(600, 40 ...

  6. java set 包含_Java Set.contains()方法:判断Set集合是否包含指定的对象

    Java 集合类中的 Set.contains() 方法判断 Set 集合是否包含指定的对象.该方法返回值为 boolean 类型,如果 Set 集合包含指定的对象,则返回 true,否则返回 fal ...

  7. java反射基础_Java反射基础(一)--Class对象获取

    ClassesJava中,任何一个对象要么是一个引用类型要么是基本数据类型.引用类型指的是那些直接或间接 Java.lang.Object的类.Classse,enum,和接口都是应用类型.基本类型是 ...

  8. java oscache 缓存_Java]用OSCache进行缓存对象

    Java]用OSCache进行缓存对象 1.OSCache是什么? OSCache标记库由OpenSymphony设计,它是一种开创性的缓存方案,它提供了在现有JSP页面之内实现内存缓存的功能.OSC ...

  9. java foreach参数_java – Mybatis foreach迭代复杂对象参数中的整数列表

    我在Play Framework 2.3.6 Java项目中使用MyBatis 3.2.8.我已经挣扎了几天,迭代遍历复杂对象参数中的MyBatis映射器的整数列表.这是我的设置: 我在EventFi ...

最新文章

  1. 【深度学习】Transformer在语义分割上的应用探索
  2. 数据分析 python 用途-Python 从爬虫到数据分析
  3. python基础(18)之 异常处理
  4. mysql当时读_Mysql事务以及四中隔离级别实例2以及InnoDB如何解决当时读的幻读问题...
  5. github下载慢怎么办,国内下载release内容的解决办法
  6. “对不起,我们只招有出色背景的技术人员!”
  7. BZOJ 2301 Problem b
  8. [渝粤教育] 盐城工学院 大学物理(力学、振动与波动) 参考 资料
  9. UC大裁员:全体带薪休假至3月31日,补偿措施羡煞网友!
  10. 晨风机器人php接口程序_微信之后,QQ也开始封杀机器人了!!!
  11. 公众号常用的排版软件有哪些?
  12. B站手艺人又在刷新年轻人的见识
  13. Linux如何查找域名IP地址
  14. 瞬时频率函数matlab,瞬时频率估计的相位建模法及Matlab的实现
  15. System.Reflection.TargetParameterCountException”类型的异常 参数计数不匹配
  16. 汇通达再度冲刺港交所上市:整体毛利率低下,已有股东提前退出
  17. 一个女程序员眼中的程序员
  18. 北京电大c语言实验作业二,大学大一c语言程序设计实验室上机题全部代码答案(实验报告).doc...
  19. DataGrip连接Hive详细步骤
  20. conda 安装太慢

热门文章

  1. 为什么每次进入命令都要重新source /etc/profile 才能生效?
  2. IOS开发中实现UITableView按照首字母将集合进行检索分组
  3. 注册flash.ocx inno setup (转)
  4. 谷歌探月大赛确定29支队伍 最高奖金2000万美元
  5. jQuery入门[2]-选择器
  6. FPGA与CPLD的区别
  7. 【iOS开发】使用iFrameExtractor实现视频直播
  8. C# XXX.XmlSerializers”的程序集未能加载到..
  9. laravel5.3-数据库操作下的局部or条件与全局or条件(orWhere的局部与全局)
  10. PAT:1031. 查验身份证(15) AC