Skip to content

07 — Lambda与Stream索引

定位: Java 8 引入函数式编程 — 从"怎么做"到"做什么",代码从命令式到声明式的转变 面试高频度: ⭐⭐⭐⭐

一、知识全景图

┌─────────────────────────────────────────────────────────────┐
│             Lambda / Stream / 方法引用 演进                   │
│                                                              │
│   匿名内部类 →   Lambda  →  方法引用                          │
│   new Runnable()  () -> {}     System.out::println            │
│                                                              │
│   ┌──────────────────────────────────────────────────┐       │
│   │              Stream 流水线模型                     │       │
│   │                                                   │       │
│   │   数据源 ─→ 中间操作(惰性) ─→ 终端操作(触发)       │       │
│   │   (集合)    filter/map/flatMap   collect/forEach   │       │
│   │              sorted/distinct       reduce/count    │       │
│   │                                                   │       │
│   │   惰性求值 → 链式方法构建操作流水线                  │       │
│   │   终端操作触发 → 一次性处理所有数据                   │       │
│   └──────────────────────────────────────────────────┘       │
│                                                              │
│   ┌─────────── Collectors ─────────────────────┐             │
│   │  toList / toSet / toMap / groupingBy        │             │
│   │  partitioningBy / joining / summarizingInt   │             │
│   └─────────────────────────────────────────────┘             │
└─────────────────────────────────────────────────────────────┘

二、子专题导航

#主题面试频率核心内容
**Lambda与函数式接口**Lambda与函数式接口⭐⭐⭐⭐@FunctionalInterface、四大核心函数式接口、变量捕获
**Stream流水线**Stream流水线⭐⭐⭐⭐惰性求值、中间操作/终端操作、并行流
**Collectors收集器**Collectors收集器⭐⭐⭐⭐toMap 详解、groupingBy 分组、分区、下游收集器
**方法引用**方法引用⭐⭐⭐四种引用方式、构造器引用、数组引用

📚 相关文件

  • **集合索引** — Stream 的数据源
  • **Java文库设计文档** — 返回总纲

Knowledge4J — Java 知识库