1
resposta

Adicionar um Elemento na Lista

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;

public class Curso {

    private String nome;
    private String instrutor;
    private List<Aulas> aulas = new LinkedList<Aulas>();

    public Curso(String nome, String instrutor) {

        this.nome = nome;
        this.instrutor = instrutor;

    }
Classe 
package br.com.resumo.modelo;

import java.util.Comparator;

public class Aulas{

        private String titulo;
        private int tempo;



        public Aulas(String titulo, int tempo) {

            this.titulo = titulo;
            this.tempo = tempo;
        }


        public void setTitulo(String titulo) {

            this.titulo = titulo;
        }


        public String getTitulo() {

            return titulo;
        }

        public void setTempo (int tempo) {

            this.tempo = tempo;
        }

        public int getTempo() {
            return tempo;
        }

        @Override
        public String toString() {

        return "Titulo: "+this.titulo+" Tempo :"+this.tempo+"";
        }



}

import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.Comparator; import java.util.List;

import javax.naming.ldap.SortControl;

import br.com.resumo.modelo.Aulas; import br.com.resumo.modelo.Curso;

public class Principal {

public static void main(String[] args) {

    Curso javaColecoes = new Curso("Java coleções", "Luciano");
    Aulas aula1 = new Aulas("Java", 80);

            List<Aulas> aulas = javaColecoes.getAulas();

            javaColecoes.getAulas().add(aula1);

    System.out.println(aulas);

}

}

Boa noite Aluleiras, a minha duvida esta na linha javaColecoes.getAulas().add(aula1); Como é possível adicionar um elemento na lista por meio de um get?? não seria um set que alimentaria a lista? Alguém poderia me explicar como por meio de um get consigo adicionar na lista.

1 resposta

Oi Luciano!

Você usa o get sim, mas somente para acessar a lista presente na classe Curso.

Quando você faz um javaColecoes.getAulas(), é retornada uma LinkedList de Aula, e essa classe do LinkedList, possui um método chamado add, que adicionará ao final da sua lista, um elemento.

Você até poderia chamar o javaColecoes.setAulas(listaNovaDeAulas), mas estaria substituindo todas as aulas já presentes, diferentemente do add que mantém as anteriores.

https://docs.oracle.com/javase/7/docs/api/java/util/LinkedList.html#add(E)