我想实现类似于scala如何定义Map
为都预定义type
和object
。在Predef
:使用类型别名到Java枚举
type Map[A, +B] = collection.immutable.Map[A, B]
val Map = collection.immutable.Map //object Map
不过,我想做到这一点使用Java enum
秒(从共享库)。因此,例如,我有一些全球性的别名:
type Country = my.bespoke.enum.Country
val Country = my.bespok.enum.Country //compile error: "object Country is not a value"
这样做的原因是,我希望能够使用如下代码:
if (city.getCountry == Country.UNITED_KINGDOM) //or...
if (city.getCountry == UNITED_KINGDOM)
Howver,这是不可能,而同时导入我的类型别名。 注意:如果我没有声明预定义的类型并导入它,这段代码就可以正常工作!是否有一些我可以用来实现这个目标的语法?
Alexandre - 这是一个** Scala **问题 - 不是Java的问题! – 2010-01-26 07:42:29
更改了Scala的答案 – 2010-01-27 18:18:24