【发布时间】:2015-02-21 04:10:35
【问题描述】:
我正在尝试在 Eclipse 中为 Range 类实现 Google Guava。据我所知,我已经成功导入了 Guava 库,但是当我尝试实例化一个新范围时,如下所示,我收到错误“范围无法解析为类型。”
import com.google.*;
public class RangeTest {
Range<Integer> testRange = Range.closed(1, 5);
}
我相信我缺少某种静态导入或方法语法中的某些内容。
我目前正在使用Standford's CS106a curriculum(尽管 Guava 是一个不相关的项目),所以我使用的是 JRE 1.6 和“Standford Eclipse”SDK。我已经尝试使用 Dollar 代替,并且已经能够让它与静态导入一起使用。 Java 和一般编程新手。
【问题讨论】:
-
通配符不是递归的,
com.google.common.collect.*应该可以工作。 -
这消除了错误,非常感谢。
-
如果您使用的是 eclipse,那么您可能不需要使用通配符导入。使用自动补全(CTRL+空格)补全类名,显式导入会自动插入。或者,CTRL+Shift+O 将重新组织您的导入并删除未使用的导入,包括您尚未完成的新导入。使用显式导入的好处是您不必处理具有相同名称的两个类的任何歧义。此外,
Map.Entry等子类无论如何都不会包含在通配符导入中。
标签: java eclipse collections import guava