Diferenças entre a lista Java e a lista de matrizes

Java é uma linguagem dinâmica e pode ser usada em qualquer plataforma. Ele fornece uma lista Java vs ArrayList. A lista atua como uma interface e a lista Array é uma implementação da lista. A interface de lista consiste em métodos. Esses métodos estão incluídos na classe Array list com algumas adições de métodos. A principal diferença entre Java List e ArrayList é que você precisa criar uma referência para a interface pai na primeira e uma referência para a classe que implementa a lista. Isso significa que a classe Array list é a segunda classe. Vamos dar uma olhada nas diferenças entre Java List e ArrayList.

Comparação cara a cara entre a lista Java e a lista de matrizes (infográficos)

Abaixo está a comparação top 4 entre Java List vs Array List

Principais diferenças entre a lista Java e a lista de matrizes

As diferenças entre a lista Java e a lista de matrizes são explicadas nos pontos mencionados abaixo:

  • Uma das principais diferenças entre a lista Java e a lista de matrizes é que a lista é uma interface e a lista de matrizes é uma classe de coleção padrão.
  • A interface Java List estende a lista Collection e Array estende a classe Abstract List e também pode implementar a interface List.
  • A interface de lista cria uma coleção de elementos que são armazenados em sequência e podem ser acessados ​​por seu número de índice. A lista de matrizes, pelo contrário, cria uma matriz de objetos em que a matriz pode crescer dinamicamente sempre que necessário e reduzir também.
  • Tanto a Java List quanto a Array List fornecem diferentes tipos de métodos para acessar dados da lista. Esses métodos permitem obter elementos de uma matriz na posição especificada e também remover e reduzir o tamanho de uma matriz no caso da lista Matriz.

Tabela de comparações da lista Java vs lista de matrizes

A seguir, é apresentada a tabela de comparação entre Java List e Array List

A base da comparação entre a lista Java e a lista de matrizesLista JavaLista de matrizes
Diferença básicaList é uma interface que estende a coleção. À medida que estende a Coleção, declara seu comportamento e armazena uma sequência de elementos. Uma lista pode ter alguns métodos adicionais, juntamente com os presentes na coleção. Uma lista também pode conter elementos duplicados. Muitos dos métodos em uma lista podem gerar Exceção de Operação Não Suportada se a coleção não puder ser modificada.Array List é uma classe que estende a Lista abstrata e implementa a interface Lista. Matrizes normais usadas em Java são de comprimento fixo. Depois que uma matriz é criada em Java, seu tamanho não pode ser aumentado ou diminuído. As listas de matrizes são dinâmicas e podem ser criadas com um tamanho inicial e, posteriormente, o tamanho pode ser aumentado se mais dados forem adicionados e também pode ser diminuído se quaisquer dados forem removidos.
SintaxeA sintaxe para declarar uma lista é a seguinte:
interface pública List extends Collection
A sintaxe para declarar a lista Array é a seguinte:
public class ArrayList estende implementos AbstractList List, RandomAccess, Cloneable, Serializable
TrabalhandoO Java List estende a estrutura Collection e usa o namespace system.collection.generic. Uma lista é usada para obter objetos relacionados aos seus números de índice. Um objeto de lista pode ser criado como abaixo:
Listar a = new ArrayList ();
Depois que um objeto é criado por um usuário, você pode restringir o tipo de objeto que pode ser armazenado na lista. Um objeto pode ser declarado como tipo seguro. Isso pode ser feito como abaixo:
// Obj é um tipo de objeto a ser armazenado em List.List list = new List ();
A lista de matrizes é criada estendendo o AbstractList e implementando a interface da lista. O espaço para nome usado pela lista Array é System. Coleções. A lista de matrizes é considerada quando o usuário precisa criar uma matriz dinâmica que contenha objetos e que possa ser adicionada e removida em tempo de execução.
ArrayList é uma classe e, portanto, fornece alguns construtores. Esses construtores são os seguintes:
1) ArrayList (): Usando esse construtor, o usuário pode criar uma lista vazia de matrizes. 2) ArrayList (Coleção c): Este construtor é usado para criar uma lista de matrizes que é inicializada com os elementos enviados na coleção c.3) (capacidade int): o principal recurso da lista Array é que ela aumenta automaticamente quando mais elementos são adicionados à lista de arrays. Esse construtor ajuda a criar uma lista de matrizes com uma capacidade inicial especificada.
MétodosUma lista fornece vários métodos:
1) void add (int index, Object obj)
Este método ajuda na inserção de objetos. Isso é feito invocando a lista no índice que está sendo passado. Todos os elementos existentes são alterados e, como resultado, nenhum dado é substituído.
2) Objeto get (int index)
Retorna o objeto que é armazenado nesse índice específico na coleção de chamada.
3) ListIterator listIterator ()
Esta função retorna um iterador para o início da lista de chamadas.
4) Remoção de objeto (int index)
É usado na remoção de elementos no índice de posição mencionado e retorna o item excluído. Além disso, a lista resultante é compactada e os índices dos elementos subseqüentes são decrementados por um.
5) Listar subList (int start, int end)
Ele retornará uma lista do início ao fim, onde o início é o índice inicial e o final será o índice final. Os elementos de uma lista também podem ser referenciados pelo objeto de chamada.
Uma lista de matrizes fornece os métodos abaixo:
1) void add (int index, Object obj)
Ele insere um elemento especificado em uma posição especificada e lançará uma exceção IndexOutOfBoundsException quando o índice mencionado estiver fora do intervalo.
2) Booleano contém (Objeto o)
Ele pesquisa a lista e retorna true se o elemento especificado estiver presente. Para ser mais específico se a lista contiver pelo menos um elemento como o == null? e == null: o.equals (e)
3) Objeto get (int index)
Ele retorna o elemento presente na posição especificada e lançará uma exceção IndexOutOfBoundsException quando o índice mencionado estiver fora do intervalo.
4) void garantirCapacidade (int minCapacidade)
Aumenta a capacidade da instância da lista Array. Ele garante que ele possa conter um número mínimo de elementos que é especificado como a capacidade.
5) Objeto () toArray ()
Retorna uma matriz que consiste em todos os elementos da lista. Retorna NullPointerException se a matriz for nula.

Conclusão - Lista Java vs Lista de Matrizes

Como resultado, a lista de matrizes é a solução para o problema de uma memória de matriz estática. Quando um usuário usa uma lista de matrizes, é criada a matriz dinâmica que pode ser aumentada sempre que necessário. A lista normal estende a classe de coleção. Além disso, é melhor aumentar a capacidade de uma matriz no início do que realocar a memória posteriormente. A manipulação é lenta na lista de matrizes, pois a mudança precisa ser feita se algum elemento for removido de uma lista. Em uma lista, você pode executar diferentes operações de acesso posicional, pesquisa e exibição de alcance também.

Artigo recomendado

Este foi um guia para as principais diferenças entre a Java List e a Array List. Aqui também discutimos as principais diferenças entre Java List x Array List com infográficos e tabela de comparação. Você também pode conferir os seguintes artigos para saber mais -

  1. Vector Java vs ArrayList - qual é a melhor tecnologia?
  2. Java vs JavaScript
  3. Scala vs Java Performance: Qual é o melhor
  4. Pilha vs Java Heap
  5. Matriz C # vs Lista; Benefícios
  6. Guia útil sobre perguntas da entrevista para testes de Java
  7. Diferença entre lista e conjunto