1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Arraylist JAVA

Discussão em 'Programação' iniciada por jahred, 12 de Abril de 2008. (Respostas: 4; Visualizações: 1192)

  1. jahred

    jahred Power Member

    Boas minha gente!

    Em java criei um programa que usa um ArrayList, que contém instâncias da classe Tarefas.

    O que eu queria saber é se posso fazer o seguinte, de modo a modificar a prioridade "p" de uma tarefa "i":

    sendo heap o ArrayList, "i" é a posição da tarefa no ArrayList, setPriority é uma função da classe Tarefas que modifica a prioridade de uma tarefa, e "p" é a prioridade a modificar:

    heap.get(i).setPriority(p);

    isto funciona?

    ou tenho que fazer uma tarefa auxiliar, modificar a tarefa auxiliar e substituir? tipo isto:
    Task aux=heap.get(i);
    aux.setPriority(p);
    heap.set(i,aux);

    obrigado pela ajuda...
     
  2. AliFromCairo

    AliFromCairo Power Member

    Assumindo que utilizas genéricos (i.e. a tua variável heap é do tipo ArrayList<Task>), o teu código funciona correctamente mas talvez fique mais perceptível se separares.
     
    Última edição: 12 de Abril de 2008
  3. alph

    alph Power Member

    Funcionará tudo muito bem e, discordando com o AliFromCairo, até acho bastante legível.
     
  4. saunde

    saunde Power Member

    Concordo com o alph .. para quê separar ? Está bem legível..
     
  5. AliFromCairo

    AliFromCairo Power Member

    Sim, está legível.

    Já agora, a última linha do código que colocaste acima ( heap.get(i); ) é redundante, pois ao fazeres heap.get(i) estás a obter uma referência para o objecto que se encontra na posição i da lista e, consequentemente, as alterações a essa referência vão repercutir-se na lista.
     

Partilhar esta Página