使用通配符导入符号,但重命名或忽略其中一些符号

时间:2015-01-14 14:14:31

标签: scala import wildcard

我想导入大多数Scala Swing符号,但有一些例外。例外是我提供了自己的实现的类,例如ToggleButton,它在scala.swing中只有一个基本的实现(没有构造函数使用Action)。

我可以为我的类使用不同的名称(例如ToggleButtonEx),但这使得使用它们不那么自然。

我正在寻找类似的东西:

import scala.swing.{ToggleButton => SToggleButton, _} // import all but ToggleButton
import mydomain.swing._ // contains ToggleButton as well

是否有一些用于导入的模式匹配语法,或者其他一些实现此目的的方法?

1 个答案:

答案 0 :(得分:2)

您可以使用下划线排除某些名称。

import scala.swing.{ToggleButton => _, _}
import mydomain.swing._

另一种解决方案是单独导入ToggleButton。由于个别导入优先于通配符导入,因此对ToggleButton的引用将不再含糊不清。

import scala.swing._
import mydomain.swing.{ToggleButton, _}