What does “=>” mean in import in scala?(转自StackOverflow问答)

As others have mentioned, it‘s an import rename. There is however one further feature that proves astoundingly-useful on occasion that I would like to highlight: If you "rename" to _, the symbol is no longer imported.

This is useful in a few cases. The simplest is that you‘d like to do a wildcard import from two packages, but there‘s a name that‘s defined in both and you‘re only interested in one of them:

import java.io.{ File=>_, _ }
import somelibrary._

Now when you reference File, it will unambiguously use the somelibrary.File without having to fully-qualify it.

In that case, you could have also renamed java.io.File to another name to get it out of the way, but sometimes you really do not want a name visible at all. This is the case for packages that contain implicits. If you do not want a particular implicit conversion (e.g. if you‘d rather have a compile error) then you have to delete its name completely:

import somelibrary.{RichFile => _, _}
// Files now won‘t become surprise RichFiles

参考链接:

https://stackoverflow.com/questions/31652959/what-does-mean-in-import-in-scala

时间: 2024-09-28 22:01:51

What does “=>” mean in import in scala?(转自StackOverflow问答)的相关文章

IDEA的auto import 与 Scala的隐式转换

设置IDEA的auto import 之后,编写Spark应用程序时的一些自动导入情况及其说明. 1.普通类的自动导入 var cnames = new ArrayBuffer[String]() var ips = new ArrayBuffer[String]() 直接根据提示alt+enter便可以导入ArrayBuffer类包 2.需要隐式转换 val joinRDD = reqRDD.join(respRDD).map(x => (x._2._1, x._2._2)).reduceBy

Beginning Scala study note(9) Scala and Java Interoperability

1. Translating Java Classes to Scala Classes Example 1: # a class declaration in Java public class Book{} # Scala equivalent of a class declaration class Book Example 2: # a Java class with a Construtor public class Book{ private final int isbn; priv

Scala method call syntax

There are two standard ways of calling methods: obj.method(params) // dot notation obj method (params) // operator notation The above can be modified in the following ways: If params is a single parameter, you can replace () with {}. If params is a s

Scala入门到精通——第十八节 隐式转换与隐式参数(一)

本节主要内容 隐式转换简介 隐式转换函数 隐式转换规则 隐式参数 1. 隐式转换简介 在scala语言当中,隐式转换是一项强大的程序语言功能,它不仅能够简化程序设计,也能够使程序具有很强的灵活性.要想更进一步地掌握scala语言,了解其隐式转换的作用与原理是很有必要的,否则很难得以应手地处理日常开发中的问题. 在scala语言中,隐式转换是无处不在的,只不过scala语言为我们隐藏了相应的细节,例如scala中的类继承层次结构中: 它们存在固有的隐式转换,不需要人工进行干预,例如Float在必要

Scala - 01 - Scala简介

Scala简介 Scala(Scalable Language)是一门多范式(multi-paradigm)编程语言,Scala的设计吸收借鉴了许多种编程语言的思想,具备面向对象编程.函数式编程等特性. Scala具备强大的并发性,支持函数式编程,可以更好地支持分布式系统: Scala语法简洁,能提供优雅的API: Scala兼容Java,运行速度快,且能融合到Hadoop生态圈中: Scala特性 交互式编程:提供REPL(Read-Eval-Print Loop,交互式解释器),可以即时查看

mac平台scala开发环境搭建

到scala官网,下载scala的sdk,地址:http://www.scala-lang.org/download/ adeMacBook-Pro:scala-2.11.6 apple$ wget http://downloads.typesafe.com/scala/2.11.6/scala-2.11.6.tgz?_ga=1.266727886.1594027332.1432723613 解压并配置: adeMacBook-Pro:scala-2.11.6 apple$ tar -zxvf

成为专业程序员路上用到的各种优秀资料、神器及框架

最近想着怎么把自己的知识体系进行整理起来,使用思维导图进行描述,对自己以后的发展也有一个更深的认识,更快的提升自己:看到了下面这篇文章,感觉非常实用,从语言到框架都非常全面,自己也可以继续补充,也是对自己知识体系的一个补充吧. 前言 成为一名专业程序员的道路上,需要坚持练习.学习与积累,技术方面既要有一定的广度,更要有自己的深度. 笔者作为一位tool mad,将工作以来用到的各种优秀资料.神器及框架整理在此,毕竟好记性不如烂键盘,此项目可以作为自己的不时之需. 本人喜欢折腾,记录的东西也比较杂

【真正福利】成为专业程序员路上用到的各种优秀资料、神器及框架

转载,原地址:http://www.cnblogs.com/jasondan/p/6380597.html 据说看到好文章不推荐的人,服务器容易宕机!本文版权归翟士丹(Stan Zhai)和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利. 好东西不是随便收集下,发篇博文,骗些点赞的!积累了5年多的东西,是时候放出来跟大家见见面了. 或许有的园友在14年的时候收藏过我的一篇"工欲善其事.必先利其器"的博文,时隔3年,已经

成为专业程序员路上有用的各种优秀资料、神器及框架

目录 资料篇 技术站点 必看书籍 大牛博客 GitHub篇 工具篇 平台工具 常用工具 第三方服务 爬虫相关(好玩的工具) 安全相关 Web服务器性能/压力测试工具/负载均衡器 大数据处理/数据分析/分布式工具 Web前端 语言篇 Scala Java Python Swift .NET C & C++ 其他 游戏开发相关 日志聚合,分布式日志收集 RTP,实时传输协议与音视频 资料篇 技术站点 在线学习:Coursera.edX.Udacity.MIT公开课.MOOC学院.慕课网 Hacker