首页 > 其他 > 详细

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

时间:2017-07-24 12:30:00      阅读:212      评论:0      收藏:0      [点我收藏+]


 

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

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

原文:http://www.cnblogs.com/hubavyn/p/7228123.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!