14.scala隐式转换

目录

  • 概述
  • 实践
    • 代码
    • 执行结果
  • 结束

概述

隐式转换:偷偷的(隐式)对现有功能进行增强(转换)

实践

代码

package com.fun.scalaimport java.io.File
import scala.io.Sourceobject ImplicitApp {def main(args: Array[String]): Unit = {// implicit 2 = to 等价  :定义隐式转换函数// implicit def a2B(a:A):B =new B(a.)implicit def man2SuperMan(man: Man): SuperMan = new SuperMan(man.name)val man = new Man("测试")man.fly()implicit def file2RichFile(file: File) = new RichFile(file)val file = new File("data/wc.data")println(file.read())}
}class Man(val name: String)class SuperMan(val name: String) {def fly(): Unit = {println(s"$name fly ...")}
}/*** 隐式转换 常用命名:RichXxx*/
class RichFile(val file: File) {def read() = Source.fromFile(file.getPath, "utf-8").mkString
}

执行结果

在这里插入图片描述

结束

scala隐式转换 至此结束。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/456746.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】Linux权限(下)

Hello everybody!在上一篇文章中,权限讲了大部分内容。今天继续介绍权限剩下的内容,希望大家看过这篇文章后都能有所收获! 1.更改文件的拥有者和所属组 对于普通用户,文件的拥有者和所属组都无权修改。 、 、 但root可以修改文件…

Anaconda的安装及其配置

一、简介 Anaconda是一个开源的包、环境管理器,主要具有以下功能和特点: 提供conda包管理工具:可以方便地创建、管理和分享Python环境,用户可以根据自己的需要创建不同的环境,每个环境都可以拥有自己的Python版本、库…

Linux 服务器安装maven

1、压缩文件下载Maven – Download Apache Maven 2、解压 tar -xvf apache-maven-3.8.4-bin.tar.gz 3、配置环境变量 在/etc/profile中保存Maven的环境变量: export M2_HOME/opt/server/apache-maven-3.5.4 export PATH$PATH:$M2_HOME/bin 4、通过source生效文件 so…

FB-BEV:BEV Representation from Forward-Backward View Transformations

参考代码:FB-BEV 动机与出发点 基于几何关系的BEV投影过程,依据BEV特征获取方式进行划分:图像角度使用类似LSS方案“push”过程或者BEV特征角度使用类似Fast BEV方案的“pull”过程。前者产生的BEV特征是稀疏的矩阵,后者产生的BE…

Orange3数据转换(数据采样组件)

组件介绍: 固定数据比例(Fixed proportion of data) 返回整个数据的选定百分比 固定样本量(Fixed sample size) 返回选定数量的数据实例,并可以设置 Sample with replacement(替换样本),该替换样本始终从整个数据集中…

MySQL查询优化技巧和10个案例展示

优化MySQL查询的实战技巧: **避免使用SELECT ***:只获取需要的列,这样可以减少数据传输量,提高查询效率。使用索引:为查询频繁的列创建索引,可以显著提高查询速度。但请注意,索引并非万能&…

c语言贪食蛇游戏

演示视频 目录 一.概述 二.游戏开始前 修改控制台程序标题和大小 Win32 API GetStdHandle函数 GetConsoleCursorInfo函数和SetConsoleCursorInfo函数 SetConsoleCursorPosition函数 游戏开篇界面处理 创建地图 蛇身节点以及食物节点初始化 蛇身的初始化 整体蛇节点…

万字猛文:MQTT原理及案例

MQTT 协议是当今世界上最受欢迎的物联网协议,没有之一。MQTT 协议为设备提供了稳定、可靠、简单易用的通信基础,截至目前通过 MQTT 协议连接的设备已经过亿,广泛应用于 IoT、M2M 等领域。本篇将从最基础的知识开始,向您讲解 MQTT …

基于单片机的智能寻光小车设计

摘 要:随着物联网技术的飞速发展和逐渐成熟,以单片机为主的智能小车在巡查、仓储、探险及国防等领域得到广泛应用。本文设计了一种基于单片机的智能寻光小车,该小车以STC89C52RC 芯片为设计核心,结合光敏传感器和超声波传感器等多…

druid配置wall导致无法批量sql

1、现象 2、原配置 spring:autoconfigure:exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfiguredatasource:druid:stat-view-servlet:enabled: trueloginUsername: ***loginPassword: ***allow:web-stat-filter:enabled: truefilter:wall:conf…

5 款提升 UI 设计效率的软件工具

你知道如何选择正确的UI设计软件吗?你知道设计漂亮的用户界面和带来良好用户体验的应用程序需要什么界面设计软件吗?基于APP界面的不同功能,所选择的APP界面设计软件也会有所不同。然而,并不是说所有的APP界面设计软件都非常精通&…

开发小程序可以用香港服务器吗

随着微信小程序的日益普及,越来越多的开发者选择投入到小程序的开发中。而在开发过程中,服务器的选择是一个关键问题。其中,香港服务器由于其地理位置和网络质量的优势,成为许多开发者的首选。那么开发小程序是否可以使用香港服务…