Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

Você está aqui: Java ::: Coleções (Collections) ::: LinkedList

Convertendo uma LinkedList em um array de T

Quantidade de visualizações: 8618 vezes


O título desta dica é meio confuso, visto que à primeira vista, o Java não contém um tipo T. Na verdade, usei o T para definir um tipo genérico, ou seja, mostrarei como converter uma lista ligada LinkedList em um array de qualquer tipo, desde que este novo tipo seja uma interface implementada pelos elementos da lista ligada ou uma superclasse destes.

O primeiro passo é definir e alocar espaço para o novo array:
String array[] = new String[nomes.size()];
Veja que definimos o tamanho do array como sendo o tamanho da LinkedList. Aqui nós definimos o tipo como String porque a lista contém elementos String. Mas poderia ser CharSequence ou Object, uma vez que String herda de Object e implementa CharSequence. Veja como ficaria:
CharSequence array[] = new String[nomes.size()];
O passo seguinte é converter a lista ligada para o array criado anteriormente. Isso é feito da seguinte forma:
array = nomes.toArray(array);
Veja como fornecemos o tipo do array como argumento para o método toArray(). Abaixo você encontrará o código completo para o exemplo. Tenha cuidado. Se tentarmos fornecer um tipo que não seja uma interface implementada pelos elementos da lista ou uma superclasse destes, uma exceção do tipo ArrayStoreException será lançada:
Integer array[] = new Integer[nomes.size()];
array = nomes.toArray(array);
Eis a exceção lançada:
Exception in thread "main" 
  java.lang.ArrayStoreException: java.lang.String
        at java.util.LinkedList.toArray(Unknown 
  Source)
        at Estudos.main(Estudos.java:18)
E abaixo o código completo para o exemplo:
import java.util.*;

public class Estudos{ 
  public static void main(String args[]){ 
    // Cria uma LinkedList de Inteiros
    LinkedList<String> nomes = new 
      LinkedList<String>();
    
    // adiciona elementos no final da lista 
    // ligada
    nomes.add("Osmar");
    nomes.add("Carlos");
    nomes.add("Marcelo");

    // vamos converter esta lista em um
    // array de String
    String array[] = new String[nomes.size()];
    array = nomes.toArray(array);

    // exibe o resultado
    for(int i = 0; i < array.length; i++){
      System.out.println(array[i]);
    }
  } 
}


Link para compartilhar na Internet ou com seus amigos:

Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 16 usuários muito felizes estudando em nosso site.