第3课 隐式转换

简介:
1)val array=Array(1,2,3,4,5);
array.map(item => 2*item);map的作用是循环遍历array中的每一个元素,并把每个元素做为具体的值传给map中的做为参数的函数。map执行结果为Array[Int] =Array(2,4,6,8,10);函数的参数也是函数,item时匿名函数,这个也是高阶函数
2)高阶函数的返回值也可能是函数。高阶函数的参数是函数,这是高阶函数的2个层面。高阶函数可以自动推断出函数参数的类型。而且对只有一个参数的函数,可以省略参数和参数类型外围的小括号。如果在函数的参数的作用的函数体中,只使用了一次参数的具体的值的话,可以将参数的名称省略,用_代替。
3)科里化,有俩个参数的函数,可以转化为俩个函数,第一个函数接收那函数的第一个参数,第2个函数接收那函数的第2个参数,俩个函数的连续调用,有闭包的功能。
4)Spark,叫做分布式数据集合的函数式编程。即函数式编程作用于数据集合之上
5)隐式转换,隐式类,隐式参数,隐式对象,基本思想是可以手动指定,将某种类型的对象,或者类转化成其它类型的对象或者类,之所以要转换是因为,类本身没有这个方法,但我找他要这个方法,所以它要按我们指定的规则,进行隐式转换成具有这个方法的类型或者对象。然后使用这个类型或者对象,调用这个方法,处理我们想要的功能,如人看到怪兽,变成超人。变身打怪兽,完后又是正常人。   
6)定义了隐式转换函数,在编写程序的时候,被scala会自动使用在上下文中。scala会根据隐式转换函数的签名,在程序运行时,使用隐式转换函数,将接收的参数类型定义的对象自动升级转换成隐式转换后的对象。它转换成另一种类型的对象返回,这个时候,这个实例对象,就可能会有之前没有的方法了。使用完成之后消失,继续回归正常。隐式转换,本身不是用户手动调用的。    例如:scala运行时,会看Flie有没有speak这个方法,如果没有,java会报错而scala会看看有没有隐式转换,能够转换成具有这个方法的增级版本的类型的对象。如果有就会自定的进行隐式转换。函数名称定义为 implicit def manToSuperMan();什么to什么的格式。这样可以很好的扩展接口
目录
相关文章
|
Cloud Native Docker 容器
云原生之使用docker部署qbittorrent
云原生之使用docker部署qbittorrent
1569 2
云原生之使用docker部署qbittorrent
|
9月前
|
人工智能 弹性计算 API
2026阿里云人工智能PAI免费试用:PAI-EAS模型在线服务A10/V100等500元1个月
阿里云PAI推出模型在线服务PAI-EAS,支持Qwen3、Llama等主流模型一键部署为高可用API,弹性伸缩、GPU加速,新用户享500元代金券,免费试用A10/V100等GPU实例,助力低成本高效推理。
|
9月前
|
弹性计算 缓存 网络协议
阿里云云解析 DNS 多少钱?2026年19.9 元的阿里云云解析 DNS 个人版功能与价值解析
在域名使用过程中,DNS 解析是连接域名与服务器的关键环节,直接影响用户访问速度与服务稳定性。阿里云推出的云解析 DNS 个人版,当前有 19.9 元 / 年的优惠(原价 48 元 / 年),针对个人开发者需求提供了实用功能,下面从价格、核心功能、适用场景等方面详细说明,帮助用户判断是否值得选择。
|
人工智能 数据可视化 程序员
史上最全盘点:一文告诉你低代码(Low-Code)是什么?为什么要用?
在后疫情时代,低代码(Low-Code)+ 人工智能(AI)的组合被认为是加速社会数字化转型的重要技术。低代码通过可视化和模型驱动的理念,结合云原生和多端体验技术,显著提升了开发效率和灵活性。它不仅让专业开发者受益,还使业务人员成为“平民开发者”,弥补了专业人才缺口。此外,低代码平台能够快速响应市场变化,帮助企业构建各种应用,如四川某制造企业仅用一个月就搭建出一套内部协作和生产监控系统。结合AI的能力,低代码平台还能实现智能化的建议和优化,进一步提升用户体验和开发速度。
|
设计模式 NoSQL Java
通用框架实践|Pipeline设计+幂等重试
本文讲述在闲鱼同城模块中,针对二手车和租房等业务的商业化需求,设计和实现了一个基于Pipeline模式和幂等性控制的通用框架。
507 10
|
算法 调度
深入理解操作系统之进程调度算法的设计与实现
【5月更文挑战第27天】 在多任务处理的现代操作系统中,进程调度算法是核心组件之一,负责决定哪个进程将获得CPU资源。本文不仅探讨了几种经典的进程调度算法,包括先来先服务(FCFS)、短作业优先(SJF)和轮转调度(RR),还分析了各自的优势、劣势及适用场景。此外,文章将深入讨论如何根据系统需求设计自定义调度算法,并提供了基于伪代码的实现示例。最后,通过模拟实验比较了这些算法的性能,以指导读者在实际操作系统设计时的选择与优化。
|
搜索推荐 应用服务中间件 Apache
深入解析301重定向:技术原理、SEO影响与最佳实践
301重定向是网站运营和SEO优化中的关键技术,用于实现URL永久迁移,传递页面权重,提升搜索引擎收录效率。本文详解301重定向的技术原理、SEO价值及百度优化规范,剖析常见问题与典型案例,帮助站长精准实施,确保网站权重平稳过渡与流量增长。内容涵盖技术实现、风险规避及实战策略,为SEO优化提供全面指导。
708 0
|
弹性计算 运维 Ubuntu
使用阿里云服务器自动搭建WordPress网站流程,超简单by系统运维管理OOS
本教程介绍如何使用阿里云服务器(ECS)和系统运维管理OOS自动搭建WordPress网站,支持Ubuntu、CentOS及Alibaba Cloud Linux等操作系统。前提条件包括ECS实例处于运行中、有公网IP且安全组已开启80端口。安装步骤简单:进入ECS快速购买控制台选择预装WordPress,确认下单后通过管理控制台查看实例详情并开放安全组端口。最后,通过实例公网IP访问,出现WordPress登录页即表示安装成功。
|
缓存 安全 网络协议
使用事件日志识别常见 Windows 错误
事件查看器是Windows操作系统中的标准诊断工具,用于记录系统事件,包括硬件问题、软件中断和系统行为等详细信息。通过分析这些日志,管理员能够追踪和解决系统错误。访问方法包括使用快捷键Win + R输入eventvwr.msc,或通过控制面板进入。事件查看器中的每条记录包含事件ID、来源和描述,帮助识别和解决问题。常见错误如蓝屏死机、DLL错误、驱动程序错误等,可通过更新驱动程序、运行系统诊断、使用恢复功能等方式解决。
1846 4
|
测试技术
单元测试问题之使用TestMe时利用JUnit 5的参数化测试特性如何解决
单元测试问题之使用TestMe时利用JUnit 5的参数化测试特性如何解决
684 2

热门文章

最新文章