Não encontra o objeto instanciado?

2 respostas
programaçãojava
F

Ele apresenta o seguinte erro can not find symbol, class cities

private String city;  
private Map<String,String> cities = new HashMap<String, String>();

cities = new HashMap<String, String>();
cities.put("New York", "New York");
cities.put("London","London");
cities.put("Paris","Paris");
cities.put("Barcelona","Barcelona");
cities.put("Istanbul","Istanbul");
cities.put("Berlin","Berlin");

2 Respostas

G

Você esta atribuindo o new HashMap<String, String>() duas vezes na variável cities(uma vez na declaração do atributo e outra vez na linha logo abaixo). Talvez seja seja esse o problema

lvbarbosa

O lugar onde essa linha está faz toda a diferença. Pode colocar o código todo?

Essa linha muito provavelmente está fora da classe onde você definiu cities como variável privada. Por isso, quando você faz cities = ... fora da classe, o compilador entende que você está tentando instanciar um objeto da classe cities e não colocou o nome da variável. Por isso o erro "Cannot find symbol".

Criado 17 de junho de 2017
Ultima resposta 17 de jun. de 2017
Respostas 2
Participantes 3