2017-10-15 28 views
-1

后使用entrySet()函数时找不到符号我正在使用函数Map.entrySet()。当我使用import java.util.*时,它无法找到符号错误。但是,当我在做import java.util.Map.Entry它编译。不应该包含“*”Map.Entry?在import java.util。*

我错过了什么吗?

使用导入java.util.*的底线给我找不到符号错误。 对于相同的代码导入java.Map.Entry;没有。为什么?

谢谢。

+1

请显示无法编译的实际代码。 – dasblinkenlight

+0

“不应该”*“包含Map.Entry?”我不这么认为(如果直接使用'Entry',你必须'导入juMap.Entry',通常'Map.Entry'不是'Entry') – 2017-10-15 08:47:55

+0

作为一个方面说明,你应该开始使用一些IDE ,他们会为您处理进口;) – 2017-10-15 08:49:17

回答

3

明星导入用于导入包的所有类。当您指定

import java.util.*; 

您表示,对具有全名java.util.<ClassName>所有的类都被认为是进口的。

​​是java.util.Map类的内部类。星进口的子类将是这样的

import java.util.Map.*; 

我不能说这是用进口开始在所有的一个很好的做法。大多数编码准则建议避免它。子类星型导入不是您通常会在代码中遇到的东西。

+0

谢谢您的解释。 –