<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>函数式编程 on Ralph's Blog</title><link>https://pothos.dpdns.org/tags/%E5%87%BD%E6%95%B0%E5%BC%8F%E7%BC%96%E7%A8%8B/</link><description>Recent content in 函数式编程 on Ralph's Blog</description><generator>Hugo -- 0.147.7</generator><language>zh-cn</language><lastBuildDate>Thu, 25 Dec 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://pothos.dpdns.org/tags/%E5%87%BD%E6%95%B0%E5%BC%8F%E7%BC%96%E7%A8%8B/index.xml" rel="self" type="application/rss+xml"/><item><title>28.scala</title><link>https://pothos.dpdns.org/posts/28.scala/</link><pubDate>Thu, 25 Dec 2025 00:00:00 +0000</pubDate><guid>https://pothos.dpdns.org/posts/28.scala/</guid><description>&lt;h1 id="28-scala语法指南">28. Scala语法指南&lt;/h1>
&lt;h2 id="目录">目录&lt;/h2>
&lt;details>
&lt;summary>点击展开目录&lt;/summary>
&lt;h3 id="1-scala概述">&lt;a href="#1-scala%E6%A6%82%E8%BF%B0">1. Scala概述&lt;/a>&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="#11-scala%E7%AE%80%E4%BB%8B">1.1 Scala简介&lt;/a>&lt;/li>
&lt;li>&lt;a href="#12-scala%E7%89%B9%E7%82%B9">1.2 Scala特点&lt;/a>&lt;/li>
&lt;li>&lt;a href="#13-scala%E4%B8%8Ejava%E5%AF%B9%E6%AF%94">1.3 Scala与Java对比&lt;/a>&lt;/li>
&lt;li>&lt;a href="#14-%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA">1.4 开发环境搭建&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="2-基础语法">&lt;a href="#2-%E5%9F%BA%E7%A1%80%E8%AF%AD%E6%B3%95">2. 基础语法&lt;/a>&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="#21-%E5%8F%98%E9%87%8F%E4%B8%8E%E5%B8%B8%E9%87%8F">2.1 变量与常量&lt;/a>&lt;/li>
&lt;li>&lt;a href="#22-%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B">2.2 数据类型&lt;/a>&lt;/li>
&lt;li>&lt;a href="#23-%E6%93%8D%E4%BD%9C%E7%AC%A6">2.3 操作符&lt;/a>&lt;/li>
&lt;li>&lt;a href="#24-%E6%8E%A7%E5%88%B6%E7%BB%93%E6%9E%84">2.4 控制结构&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="3-函数与方法">&lt;a href="#3-%E5%87%BD%E6%95%B0%E4%B8%8E%E6%96%B9%E6%B3%95">3. 函数与方法&lt;/a>&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="#31-%E5%87%BD%E6%95%B0%E5%AE%9A%E4%B9%89">3.1 函数定义&lt;/a>&lt;/li>
&lt;li>&lt;a href="#32-%E6%96%B9%E6%B3%95%E4%B8%8E%E5%87%BD%E6%95%B0%E5%8C%BA%E5%88%AB">3.2 方法与函数区别&lt;/a>&lt;/li>
&lt;li>&lt;a href="#33-%E9%AB%98%E9%98%B6%E5%87%BD%E6%95%B0">3.3 高阶函数&lt;/a>&lt;/li>
&lt;li>&lt;a href="#34-%E5%8C%BF%E5%90%8D%E5%87%BD%E6%95%B0%E4%B8%8E%E6%9F%AF%E9%87%8C%E5%8C%96">3.4 匿名函数与柯里化&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="4-面向对象编程">&lt;a href="#4-%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%BC%96%E7%A8%8B">4. 面向对象编程&lt;/a>&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="#41-%E7%B1%BB%E4%B8%8E%E5%AF%B9%E8%B1%A1">4.1 类与对象&lt;/a>&lt;/li>
&lt;li>&lt;a href="#42-%E6%9E%84%E9%80%A0%E5%99%A8">4.2 构造器&lt;/a>&lt;/li>
&lt;li>&lt;a href="#43-%E7%BB%A7%E6%89%BF%E4%B8%8E%E5%A4%9A%E6%80%81">4.3 继承与多态&lt;/a>&lt;/li>
&lt;li>&lt;a href="#44-%E7%89%B9%E8%B4%A8trait">4.4 特质(Trait)&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="5-集合框架">&lt;a href="#5-%E9%9B%86%E5%90%88%E6%A1%86%E6%9E%B6">5. 集合框架&lt;/a>&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="#51-%E9%9B%86%E5%90%88%E6%A1%86%E6%9E%B6%E6%95%B4%E4%BD%93%E6%9E%B6%E6%9E%84">5.1 集合框架整体架构&lt;/a>&lt;/li>
&lt;li>&lt;a href="#52-listsetmap%E8%AF%A6%E8%A7%A3">5.2 List、Set、Map详解&lt;/a>&lt;/li>
&lt;li>&lt;a href="#53-scala%E4%B8%8Ejava%E9%9B%86%E5%90%88%E4%BA%92%E8%BD%AC%E5%AE%9E%E6%88%98">5.3 Scala与Java集合互转实战&lt;/a>&lt;/li>
&lt;li>&lt;a href="#54-%E5%8F%AF%E5%8F%98%E4%B8%8E%E4%B8%8D%E5%8F%AF%E5%8F%98%E9%9B%86%E5%90%88">5.4 可变与不可变集合&lt;/a>&lt;/li>
&lt;li>&lt;a href="#55-%E9%9B%86%E5%90%88%E6%93%8D%E4%BD%9C%E6%96%B9%E6%B3%95">5.5 集合操作方法&lt;/a>&lt;/li>
&lt;li>&lt;a href="#56-%E9%9B%86%E5%90%88%E6%80%A7%E8%83%BD%E5%AF%B9%E6%AF%94%E4%B8%8E%E9%80%89%E6%8B%A9%E7%AD%96%E7%95%A5">5.6 集合性能对比与选择策略&lt;/a>&lt;/li>
&lt;li>&lt;a href="#57-%E9%9B%86%E5%90%88%E6%80%A7%E8%83%BD%E5%AF%B9%E6%AF%94">5.7 集合性能对比&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="6-模式匹配">&lt;a href="#6-%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D">6. 模式匹配&lt;/a>&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="#61-%E5%9F%BA%E6%9C%AC%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D">6.1 基本模式匹配&lt;/a>&lt;/li>
&lt;li>&lt;a href="#62-%E6%A1%88%E4%BE%8B%E7%B1%BB%E6%A8%A1%E5%BC%8F">6.2 案例类模式&lt;/a>&lt;/li>
&lt;li>&lt;a href="#63-%E9%9B%86%E5%90%88%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D">6.3 集合模式匹配&lt;/a>&lt;/li>
&lt;li>&lt;a href="#64-%E6%8F%90%E5%8F%96%E5%99%A8extractor">6.4 提取器&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="7-高级特性">&lt;a href="#7-%E9%AB%98%E7%BA%A7%E7%89%B9%E6%80%A7">7. 高级特性&lt;/a>&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="#71-%E9%9A%90%E5%BC%8F%E8%BD%AC%E6%8D%A2%E4%B8%8E%E9%9A%90%E5%BC%8F%E5%8F%82%E6%95%B0">7.1 隐式转换与隐式参数&lt;/a>&lt;/li>
&lt;li>&lt;a href="#72-%E6%B3%9B%E5%9E%8B%E4%B8%8E%E7%B1%BB%E5%9E%8B%E5%8F%82%E6%95%B0">7.2 泛型与类型参数&lt;/a>&lt;/li>
&lt;li>&lt;a href="#73-%E5%8D%8F%E5%8F%98%E4%B8%8E%E9%80%86%E5%8F%98">7.3 协变与逆变&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="8-函数式编程">&lt;a href="#8-%E5%87%BD%E6%95%B0%E5%BC%8F%E7%BC%96%E7%A8%8B">8. 函数式编程&lt;/a>&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="#81-%E4%B8%8D%E5%8F%AF%E5%8F%98%E6%80%A7">8.1 不可变性&lt;/a>&lt;/li>
&lt;li>&lt;a href="#82-%E5%87%BD%E6%95%B0%E7%BB%84%E5%90%88">8.2 函数组合&lt;/a>&lt;/li>
&lt;li>&lt;a href="#83-monads%E6%A6%82%E5%BF%B5">8.3 Monads概念&lt;/a>&lt;/li>
&lt;li>&lt;a href="#84-optiontryelther">8.4 Option、Try、Either&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="9-并发编程">&lt;a href="#9-%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B">9. 并发编程&lt;/a>&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="#91-actor%E6%A8%A1%E5%9E%8B">9.1 Actor模型&lt;/a>&lt;/li>
&lt;li>&lt;a href="#92-future%E4%B8%8Epromise">9.2 Future与Promise&lt;/a>&lt;/li>
&lt;li>&lt;a href="#93-%E5%B9%B6%E8%A1%8C%E9%9B%86%E5%90%88">9.3 并行集合&lt;/a>&lt;/li>
&lt;li>&lt;a href="#94-%E5%90%8C%E6%AD%A5%E6%9C%BA%E5%88%B6">9.4 同步机制&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="10-系统交互与外部调用">&lt;a href="#10-%E7%B3%BB%E7%BB%9F%E4%BA%A4%E4%BA%92%E4%B8%8E%E5%A4%96%E9%83%A8%E8%B0%83%E7%94%A8">10. 系统交互与外部调用&lt;/a>&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="#101-%E6%89%A7%E8%A1%8Cshell%E5%91%BD%E4%BB%A4">10.1 执行Shell命令&lt;/a>&lt;/li>
&lt;li>&lt;a href="#102-%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E6%93%8D%E4%BD%9C">10.2 文件系统操作&lt;/a>&lt;/li>
&lt;li>&lt;a href="#103-%E8%BF%9B%E7%A8%8B%E7%AE%A1%E7%90%86">10.3 进程管理&lt;/a>&lt;/li>
&lt;li>&lt;a href="#104-%E7%B3%BB%E7%BB%9F%E5%B1%9E%E6%80%A7%E4%B8%8E%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F">10.4 系统属性与环境变量&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="11-scala面试题集">&lt;a href="#11-scala%E9%9D%A2%E8%AF%95%E9%A2%98%E9%9B%86">11. Scala面试题集&lt;/a>&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="#111-%E5%9F%BA%E7%A1%80%E8%AF%AD%E6%B3%95%E9%A2%98">11.1 基础语法题&lt;/a>&lt;/li>
&lt;li>&lt;a href="#112-%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E9%A2%98">11.2 面向对象题&lt;/a>&lt;/li>
&lt;li>&lt;a href="#113-%E5%87%BD%E6%95%B0%E5%BC%8F%E7%BC%96%E7%A8%8B%E9%A2%98">11.3 函数式编程题&lt;/a>&lt;/li>
&lt;li>&lt;a href="#114-%E9%AB%98%E7%BA%A7%E7%89%B9%E6%80%A7%E9%A2%98">11.4 高级特性题&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="12-总结与进阶方向">&lt;a href="#12-%E6%80%BB%E7%BB%93">12. 总结与进阶方向&lt;/a>&lt;/h3>
&lt;hr>
&lt;/details>
&lt;h2 id="1-scala概述-1">1. Scala概述&lt;/h2>
&lt;h3 id="11-scala简介">1.1 Scala简介&lt;/h3>
&lt;p>&lt;strong>Scala&lt;/strong>（Scalable Language）是一种运行在JVM上的多范式编程语言，由Martin Odersky在2003年设计。它&lt;strong>seamlessly结合了面向对象编程和函数式编程&lt;/strong>的特性，旨在构建可伸缩的软件系统。*
&lt;em>核心设计理念&lt;/em>*：&lt;/p></description></item></channel></rss>