版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
隐式转换为什么需要隐式转换隐式参数和隐式转换为什么需要隐式转换/01
我们需要某个类中的一个方法,但是这个类没有提供这样的一个方法,所以我们需要隐式转换,转换成提供了这个方法的类,然后再调用这个方法第一步,需要一个增强的类,里面提供我们想要的方法,接收的参数的类型一定要是被增强类的类型。第二部,还需要在单例对象中写明隐式转换第三步,把隐式转换函数导进来为什么需要隐式转换
在spark中隐士转换都写在伴生对象中,因为类的实例肯定能找到伴生对象的,在一个作用域当中。代码示例如下:为什么需要隐式转换
隐式参数和隐式转换/02 隐式参数的意义是当方法需要多个参数的时候,可以定义一些隐式参数,这些隐式参数可以被自动加到方法填充的参数里,而不必手填充。上面这个代码中implicitParamFunc中的第二个参数定义成了隐式参数。然后在Zoo对象里定义了两个隐式变量,import进来之后,调用implicitParamFunc方法的时候这两个变量被自动填充到了参数里。这里需要注意的是不仅仅方法中的参数需要被定义成隐式参数,对应的隐式参数的变量也需要被定义成隐式变量。隐式参数和隐式转换 比如以下一个例子,定义一个Int类型的变量num,但是赋值给了一个Double类型的数值。这时候就会编译错误:valnum:Int=3.5//CompileError但是我们加了一个隐式转换之后,就没问题了:implicitdefdouble2Int(d:Double)=d.toIntvalnum:Int=3.5//3,这段代码会被编译成valnum:Int=double2Int(3.5)隐式参数和隐式转换隐式转换类型:1、隐式转换成正确的类型这种类型是Scala编译器对隐式转换的第一选择。比如说编译器看到一个类型的X的数据,但是需要一个类型为Y的数据,那么就会去找把X类型转换成Y类型的隐式转换implicitdefdouble2Int(d:Double)=d.toIntvalnum:Int=3.5//当编译器发现变量num是个Int类型,并且用Double类型给它赋值的时候,会报错。但是在报错之前,编译器会查找Double=>Int的隐式转换。然后发现了double2Int这个隐式转换函数。于是就使用了隐式转换隐式参数和隐式转换隐式转换类型:2、方法调用的隐式转换比如这段代码obj.doSomeThing。比如obj对象没有doSomeThing这个方法,编译器会会去查找拥有doSomeThing方法的类型,并且看obj类型是否有隐式转换成有doSomeThing类型的函数。有的话就是将obj对象隐式转换成拥有doSomeThin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广西贵港市覃塘区2023-2024学年七年级下学期4月期中考试英语试题(含答案)
- 开放作文之观点看法类-2024年中考英语写作常考题型专项突破
- 视频系统的实时性优化
- 宜君养猪场改扩建项目可行性研究报告
- 成都2024年07版小学三年级下册英语第3单元真题试卷
- 重庆2024年09版小学五年级英语第六单元期中试卷
- 名著阅读(讲练)-2023年部编版中考语文一轮复习(原卷版)
- 2024年医用液氧贮槽项目投资申请报告代可行性研究报告
- 2023年固态地振动强度记录仪投资申请报告
- 三维数字内容制作-三维动画毛发制作流程规范
- 茶多酚性质功效及应用
- 野生动物管理学智慧树知到答案章节测试2023年东北林业大学
- 平行四边形的面积学习单
- 函数的零点与方程的解(说课稿)
- 金融服务礼仪讲义
- 图像质量调试工具使用指南
- 期杜仕明写作保分-h课前crack your grammar puzzles once and for all
- GA 1551.2-2019石油石化系统治安反恐防范要求第2部分:炼油与化工企业
- 三九企业集团商标权资产评估报告书
- 安全生产标准化培训(医院)课件
- 雅鲁藏布江大拐弯巨型水电站规划方案
评论
0/150
提交评论