Open Diego1083 opened 2 years ago
Seria assim
List<Gato> meusGatos = new ArrayList<>(){{
add(new Gato("Jon", 12, "preto"));
add(new Gato("Simba", 6, "tigrado"));
add(new Gato("Jon", 18, "amarelo"));
}};
se seu código estiver completo, estar faltando o ; nessa espreção
add(new Gato("Jon", 18, "amarelo"))
Oi, Diego. Tudo certinho?
Seguinte, tu podes colocar o ;
, tá?
Na verdade, acredito que foi erro de digitação mesmo. No Java o ;
é obrigatório sempre.
Sobre o <>, caso ainda não esteja funcionando, é porque em List você precisa fazer assim:
List<Gato> meusGatos = new ArrayList<>()
Tenta fazer assim e me diz se dá certo.
Estou com o mesmo problema.
Ele não aceita essa <> vazio, dá a mensagem:
'<>' cannot be used with anonymous classes
Não estou consiguindo resolver. E no exercício das séries apresenta o mesmo problema.
Oi, @thaisconto Descreve melhor o que está dando errado? Coloca a parte do código aqui.
Dá uma olhadinha no código-fonte do curso, separei em pastas.
Talvez você não esteja fazendo igual como foi feito na aula.
https://github.com/cami-la/curso-dio-intro-collections/tree/master/src/br/com/dio/collection
Oi! Eu copiei o código fonte e deu certo, muito obrigada! Descobri que estava colando um ";" a mais no código
Isso, aí @thaisconto muitooo comum acontecer de esquecer algumas coisas no começo. Depois você vai ver que fica intuitivo. ✨
Qualquer dúvida, é só falar.
Boa noite! Comecei a fazer esse exercício junto da aula e o meu está dando o mesmo problema, e a meu ver está tudo igual 😅 ao executar diz que "'<>' cannot be used with anonymous classes". Java version "1.8.0_202". EDIT: estou fazendo pelo VSCode.
public class ExemploOrdenacaoList {
public static void main(String[] args) {
List<Gato> meusGatos = new ArrayList<>() {
{
add(new Gato("Jon", 12, "preto"));
add(new Gato("Simba", 6, "tigrado"));
add(new Gato("Jon", 18, "amarelo"));
}
};
System.out.println(meusGatos);
}
}
class Gato {
private String nome;
private Integer idade;
private String cor;
public Gato(String nome, Integer idade, String cor) {
this.nome = nome;
this.idade = idade;
this.cor = cor;
}
public String getNome() {
return nome;
}
public Integer getIdade() {
return idade;
}
public String getCor() {
return cor;
}
@Override
public String toString() {
return "{" +
"nome='" + nome + '\'' +
", idade=" + idade +
", cor='" + cor + '\'' +
'}';
}
}
Oi, @laissalviatoclaudiano. Tudo bem? Então, você está utilizando o Java na versão 8, né?
Se eu não me engane, como é no Java 8, tenta declarar assim List<Gato> meusGatos = new ArrayList<Gato>()
e me diz se deu certo. (:
@cami-la agora foi! Obrigada! 😄
Boa noite, clonei o repositorio só que está gerando erro, minha verão do java é a jdk 8. Até tentei resolver mas tenho pouco conhecimento. Fazendo o curso pelo bootcamp GFT Quality Assurance #1
List meusGatos = new ArrayList<>(){{ ( Replace ' <>' with explicit type arguments )
add(new Gato("Jon", 12, "preto"));
add(new Gato("Simba", 6, "tigrado"));
add(new Gato("Jon", 18, "amarelo"))
erro: C:\IdeaProjects\curso-dio-intro-collections\src\br\com\dio\collection\list\ExemploOrdenacaoList.java:20:45 java: cannot infer type arguments for java.util.ArrayList
reason: cannot use '<>' with anonymous inner classes