So, what concrete type (subclass) of List is being used here? Are there any guarantees?

如果你看一下Collectors#toList()的文档,它说 – “对返回的List的类型,可变性,可串行化性或线程安全性没有保证。如果要返回特定实现,可以改用Collectors#toCollection(Supplier)。

Supplier> supplier = () -> new LinkedList();

List blue = shapes.stream()

.filter(s -> s.getColor() == BLUE)

.collect(Collectors.toCollection(supplier));

从lambda,你可以返回任何你想要的List< Shape>的实现。

更新:

或者,你甚至可以使用方法引用:

List blue = shapes.stream()

.filter(s -> s.getColor() == BLUE)

.collect(Collectors.toCollection(LinkedList::new));

java tolist_java – Collectors.toList()返回什么类型的List?相关推荐

  1. RobotFramework-自定义远程java关键字库能否返回Map类型

    自定义的远程关键字库能使用哪些数据类型来和robotframework交互?先引用官网上的一段话 4.2.3   Supported argument and return value types B ...

  2. java 返回值判断_在Java中判断方法重载的条件除了参数外,还可以通过返回值类型判断。_学小易找答案...

    [单选题]若int x;且有下面的程序片断,则输出结果是() . for (x=3; x<6; x++) { printf((x%2) ? "##%d" : "** ...

  3. java调用sql返回list_Hibernate执行原生SQL返回ListMap类型结果集

    我是学java出身的,web是我主要一块: 在做项目的时候最让人别扭的就是hibernate查询大都是查询出List(T指代对应实体类)类型 如果这时候我用的联合查询,那么返回都就是List , 这样 ...

  4. java返回object的类型_为什么标准java类的clone()返回Object而不是实际的类型

    在 java中允许指定函数返回的类型,例如下面的代码 public class Test { static class Dad { Dad me() { return this; } } static ...

  5. java 泛型参数具体类型获取、泛型返回具体类型获取

    自从java支持泛型后,现在,spring生态中的框架及目前的应用都使用了泛型.有的框架如mybatis和spring都需要反射获取类型,以使得序列化和反序列化得以实现,但有时候我们根据项目的需要获取 ...

  6. java 返回类对象_JAVA如何实现返回不同类型的对象

    JAVA如何实现返回不同类型的对象 发布时间:2020-11-10 16:11:51 来源:亿速云 阅读:96 作者:Leah 这篇文章运用简单易懂的例子给大家介绍JAVA如何实现返回不同类型的对象, ...

  7. Java学习第十二天----方法参数类型以及返回值类型问题、链式编程、package包、权限修饰符、内部类、成员内部类

    Java学习第十二天----方法参数类型以及返回值类型问题.链式编程.package包.权限修饰符.内部类.成员内部类 1.方法参数类型: (1)类名作为形式参数: public class MyTe ...

  8. java使用axis调用.net发布的webservice接口返回对象类型

    本人在java中axis-1.4 调用 .net发布的webService接口 有问题欢迎各路大神讨论 !!! 1.1 基本类型 1.2 对象类型 1.3复杂对象类型(对象类中嵌套对象类) 返回基本类 ...

  9. Java调用存储过程(返回:简单类型VARCHAR、自定义对象STRUCT、列表数组VARRAY)

    ORACLE 存储过程 练习七 数组专题 写在前面的废话 由于工作需要经常用到 ORACLE存储过程 其中数组是不可避免的一组成元素.那么让我们来体会一下 ORACLE存储过程的数组到低是如何使用的. ...

最新文章

  1. tcmalloc mysql 缓存_Tcmalloc优化Mysql内存管理
  2. CSS 相对|绝对(relative/absolute)定位系列(一)
  3. ASP.net本地调试时正常,发布时错误的几个问题解析
  4. c++ uint32转为int_【转】用python将GBK编码文件转为UTF-8编码文件
  5. 你为什么薪水那么低(二)之 生产力
  6. could not perform addBatch
  7. BAT文件里注释符号
  8. zen-cart修改 zencart 模板修改
  9. 学计算机每天应该吃什么,长期坐在电脑前的上班族吃什么食物好
  10. 自学mysql教程 资料_数据库MYSQL,自学,命令,教程。
  11. 【源码分享】一键打开禅意生活——电子木鱼微信小程序源码分享
  12. docker容器和镜像的区别
  13. 【CUDA】判断电脑CUDA和cuDNN是否安装成功(Windows)
  14. JAVA并发编程的艺术-读书笔记
  15. 【操作系统】Linux内核和Windows系统的内核有什么区别?
  16. Qt编译出错:During startup program exited with code 0xc0000135
  17. matlab关于年月日的程序,自己编的小程序!Matlab日期计算
  18. Ruby语言学习系列--基本的ruby语法
  19. 计算机音乐单恋一枝花,单恋一枝花-张宇
  20. 获得打气筒的三种方式,以及ListView的使用与优化

热门文章

  1. vue Linter的各种坑
  2. 数据库MySQL经典面试题之SQL语句
  3. HTML 3d立体旋转相册
  4. 整型到底占几个字节呢?
  5. 威联通nas怎么更换大硬盘_扩充存储池:威联通NAS添加硬盘的扩容设置教程
  6. 地铁听书系列之“看破不说破,81个为人处事潜规则”8月圆满收尾20220831
  7. 【前后端分离】前台多表联查
  8. ORA-600 Lookup Error Categories
  9. Ubuntu 12.04 软件管理
  10. C++中的自定义函数