EnumMap конструктор не найден - PullRequest
4 голосов
/ 21 июня 2011

Учитывая, что у меня есть реквизит

import java.awt.Color;
import java.util.EnumMap;

и

enum Terrain { ... }

тогда, насколько я могу судить из документации, это должно работать

static EnumMap<Terrain, Color> colors = new EnumMap<Terrain, Color>(Terrain.class);

но на самом деле это дает мне эту ошибку

cannot find symbol
symbol  : constructor EnumMap()
location: class java.util.EnumMap<Terrain,java.awt.Color>
static EnumMap<Terrain,Color>colors=new EnumMap<Terrain, Color>();

Чего мне не хватает?

Ответы [ 2 ]

12 голосов
/ 21 июня 2011

Код, который цитирует компилятор, не соответствует тому, что вы заявили.Похоже, вы не на самом деле предоставляете аргумент конструктору.Это прекрасно работает, например:

import java.util.EnumMap;

enum Foo {}

public class Test {    
    public static void main(String[] args) {
        EnumMap<Foo, String> map = new EnumMap<Foo, String>(Foo.class);
    }
}
1 голос
/ 21 июня 2011

Ошибка показывает конструктор без аргументов.

Вы уверены, что смотрите правильный код / ​​перекомпилировали его?

...