É o seguinte, eu quero alterar a forma como será escrita a minha lista quando eu der esse comando.
Como eu faço?
Sobrescrever método toString() da classe LinkedList;
3 Respostas
Não faz. Uma opção é criar um filho da LinkedList:
public class MyLinkedList<T> extends LinkedList<T> {
@Override
public String toString() {
//retorne o toString que você quiser aqui
}
}
Outra opção é criar uma classe Wrapper
public class ListWrapper<T>
{
private List<T> list;
public ToStringWrapper(List<T> list) {
this.list = list;
}
public List<T> get() {
return list;
}
public void set(T list) {
this.list = list;
}
@Override
public String toString() {
//seu código de formatação aqui
}
}
O segundo caso dá um pouco mais de trabalho na manipulação, mas é mais genérico.
Serviria não só para suas listas, mas para qualquer lista, seja LinkedList ou não, mesmo que você não conheça o tipo.
//Que tipo de lista será que é essa?
ListWrapper<String> wrapper = new ListWrapper(Collections.unmodifiableList<String>(lista));
Na verdade, o tipo de lista retornado por aquele método é uma inner class anônima.
Muito obrigado!
Não faz. Uma opção é criar um filho da LinkedList:public class MyLinkedList<T> extends LinkedList<T> { @Override public String toString() { //retorne o toString que você quiser aqui } }Outra opção é criar uma classe Wrapper
public class ListWrapper<T> { private List<T> list; public ToStringWrapper(List<T> list) { this.list = list; } public List<T> get() { return list; } public void set(T list) { this.list = list; } @Override public String toString() { //seu código de formatação aqui } }O segundo caso dá um pouco mais de trabalho na manipulação, mas é mais genérico.
Por exemplo:
Serviria não só para suas listas, mas para qualquer lista, seja LinkedList ou não, mesmo que você não conheça o tipo.//Que tipo de lista será que é essa? ListWrapper<String> wrapper = new ListWrapper(Collections.unmodifiableList<String>(lista));Na verdade, o tipo de lista retornado por aquele método é uma inner class anônima.
acredito que isso resolve
Criado 11 de setembro de 2011
Ultima resposta 11 de set. de 2011
Respostas 3
Participantes 3
Alura POO: o que é programação orientada a objetos? Aprenda os conceitos básicos da programação orientada a objetos, como classes, objetos, herança, encapsulamento e polimorfismo, com exemplos.
Casa do Codigo Inteligencia Artificial e ChatGPT: Da revolucao dos... Por Fabricio Carraro — Casa do Codigo