Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Java

Classe Java ArrayList

Classe Java ArrayList


Neste tutorial, aprenderemos sobre a classe ArrayList em Java. Aprenderemos sobre diferentes operações e métodos da lista de matrizes com a ajuda de exemplos.

O ArrayList classe da estrutura de coleções Java fornece a funcionalidade de matrizes redimensionáveis .

Ele implementa o List interface.


Java ArrayList vs Array


Em Java, precisamos declarar o tamanho de um array antes de podermos usá-lo. Uma vez que o tamanho de um array é declarado, é difícil alterá-lo.

Para lidar com esse problema, podemos usar o ArrayList classe. Ele nos permite criar arrays redimensionáveis.

Ao contrário dos arrays, os arraylists podem ajustar automaticamente sua capacidade quando adicionamos ou removemos elementos dele. Portanto, as listas de matrizes também são conhecidas como matrizes dinâmicas .

Criando uma ArrayList


Antes de usar ArrayList , precisamos importar o java.util.ArrayList pacote primeiro. Aqui está como podemos criar arraylists em Java:
ArrayList<Type> arrayList= new ArrayList<>();

Aqui, Digite indica o tipo de uma lista de matrizes. Por exemplo,
// create Integer type arraylist
ArrayList<Integer> arrayList = new ArrayList<>();

// create String type arraylist
ArrayList<String> arrayList = new ArrayList<>();

No programa acima, usamos Integer não int. É porque não podemos usar tipos primitivos ao criar uma lista de matrizes. Em vez disso, temos que usar as classes wrapper correspondentes.

Aqui, Integer é a classe wrapper correspondente de int . Para saber mais, visite a classe wrapper Java.

Exemplo:Criar ArrayList em Java

import java.util.ArrayList;

class Main {
  public static void main(String[] args){

    // create ArrayList
    ArrayList<String> languages = new ArrayList<>();

    // Add elements to ArrayList
    languages.add("Java");
    languages.add("Python");
    languages.add("Swift");
    System.out.println("ArrayList: " + languages);
  }
}

Saída
ArrayList: [Java, Python, Swift]

No exemplo acima, criamos um ArrayList chamados idiomas .

Aqui, usamos o add() método para adicionar elementos ao arraylist. Aprenderemos mais sobre o add() método mais adiante neste tutorial.

Operações básicas em ArrayList


O ArrayList A classe fornece vários métodos para realizar diferentes operações em listas de matrizes. Veremos algumas operações de arraylist comumente usadas neste tutorial:

1. Adicionar elementos a um ArrayList


Para adicionar um único elemento ao arraylist, usamos o add() método do ArrayList classe. Por exemplo,
import java.util.ArrayList;

class Main {
  public static void main(String[] args){
    // create ArrayList
    ArrayList<String> languages = new ArrayList<>();

    // add() method without the index parameter
    languages.add("Java");
    languages.add("C");
    languages.add("Python");
    System.out.println("ArrayList: " + languages);
  }
}

Saída
ArrayList: [Java, C, Python]

No exemplo acima, criamos um ArrayList chamados idiomas . Aqui, usamos o add() método para adicionar elementos a idiomas .

Para saber mais, visite o Java ArrayList add().

Outra maneira de adicionar elementos ao arraylist

Como adicionar um elemento em uma posição especificada em um ArrayList?
Também podemos passar um número de índice como um parâmetro adicional para o add() método para adicionar um elemento na posição especificada. Por exemplo,
// add JavaScript at index 1
languages.add(1, "JavaScript");

// add C++ at index 3
languages.add(3, "C++");
Como adicionar todos os elementos de um conjunto a um arraylist?
Também podemos adicionar todos os elementos de uma coleção (set, map) a um arraylist usando o addAll() método. Por exemplo,
import java.util.ArrayList;
import java.util.HashSet;

class Main {
  public static void main(String[] args) {

    // create a set
    HashSet<String> vowels = new HashSet<>();
    vowels.add("a");
    vowels.add("e");
    vowels.add("i");

    // create an arraylist
    ArrayList<String> alphabets = new ArrayList<>();

    // add all elements of set to arraylist
    alphabets.addAll(vowels);
    System.out.println("ArrayList: " + alphabets);
  }
}

// Output: ArrayList: [a, e, i]

Para saber mais, visite Java ArrayList addAll().

2. Acessar elementos ArrayList


Para acessar um elemento do arraylist, usamos o get() método do ArrayList classe. Por exemplo,
import java.util.ArrayList;

class Main {
  public static void main(String[] args) {
    ArrayList<String> animals = new ArrayList<>();

    // add elements in the arraylist
    animals.add("Cat");
    animals.add("Dog");
    animals.add("Cow");
    System.out.println("ArrayList: " + animals);

    // get the element from the arraylist
    String str = animals.get(1);
    System.out.print("Element at index 1: " + str);
  }
}

Saída
ArrayList: [Cat, Dog, Cow]
Element at index 1: Dog

No exemplo acima, usamos o get() método com parâmetro 1 . Aqui, o método retorna o elemento no índice 1 .

Para saber mais, visite Java ArrayList get().

Também podemos acessar elementos do ArrayList usando o iterator() método. Para saber mais, visite Java ArrayList iterator().

3. Alterar elementos ArrayList


Para alterar os elementos do arraylist, usamos o set() método do ArrayList classe. Por exemplo,
import java.util.ArrayList;

class Main {
  public static void main(String[] args) {
    ArrayList<String> languages = new ArrayList<>();

    // add elements in the array list
    languages.add("Java");
    languages.add("Kotlin");
    languages.add("C++");
    System.out.println("ArrayList: " + languages);

    // change the element of the array list
    languages.set(2, "JavaScript");
    System.out.println("Modified ArrayList: " + languages);
  }
}

Saída
ArrayList: [Java, Kotlin, C++]
Modified ArrayList: [Java, Kotlin, JavaScript]

No exemplo acima, criamos um ArrayList chamados idiomas . Observe a linha,
language.set(2, "JavaScript");



Aqui, o set() O método altera o elemento no índice 2 para JavaScript .

Para saber mais, visite o conjunto Java ArrayList().

4. Remover elementos ArrayList


Para remover um elemento do arraylist, podemos usar o remove() método do ArrayList classe. Por exemplo,
import java.util.ArrayList;

class Main {
  public static void main(String[] args) {
    ArrayList<String> animals = new ArrayList<>();

    // add elements in the array list
    animals.add("Dog");
    animals.add("Cat");
    animals.add("Horse");
    System.out.println("ArrayList: " + animals);

    // remove element from index 2
    String str = animals.remove(2);
    System.out.println("Updated ArrayList: " + animals);
    System.out.println("Removed Element: " + str);
  }
}

Saída
ArrayList: [Dog, Cat, Horse]
Updated ArrayList: [Dog, Cat]
Removed Element: Horse

Aqui, o remove() método pega o número de índice como parâmetro. E remove o elemento especificado pelo número de índice .

Para saber mais, visite Java ArrayList remove().

Também podemos remover todos os elementos do arraylist de uma só vez. Para saber mais, acesse

Métodos da classe ArrayList


Na seção anterior, aprendemos sobre o add() , get() , set() e remove() método do ArrayList classe.

Além desses métodos básicos, aqui estão mais alguns ArrayList métodos comumente usados.
Métodos Descrições
tamanho() Retorna o comprimento da lista de matrizes.
classificar() Classifique os elementos da lista de matrizes.
clone() Cria uma nova lista de matrizes com o mesmo elemento, tamanho e capacidade.
contém() Pesquisa na lista de matrizes o elemento especificado e retorna um resultado booleano.
garantirCapacidade() Especifica o elemento total que o arraylist pode conter.
está vazio() Verifica se a lista de matrizes está vazia.
indexOf() Pesquisa um elemento especificado em uma lista de matrizes e retorna o índice do elemento.

Se você quiser aprender sobre todos os diferentes métodos de arraylist, visite Java ArrayList methods.

Iterar por meio de um ArrayList


Podemos usar o loop for-each Java para percorrer cada elemento da lista de matrizes. Por exemplo,
import java.util.ArrayList;

class Main {
  public static void main(String[] args) {

    // creating an array list
    ArrayList<String> animals = new ArrayList<>();
    animals.add("Cow");
    animals.add("Cat");
    animals.add("Dog");
    System.out.println("ArrayList: " + animals);

    // iterate using for-each loop
    System.out.println("Accessing individual elements:  ");

    for (String language : animals) {
      System.out.print(language);
      System.out.print(", ");
    }
  }
}

Saída
ArrayList: [Cow, Cat, Dog]
Accessing individual elements:  
Cow, Cat, Dog,

Perguntas frequentes

Qual é a diferença entre Java ArrayList e LinkedList?
Algumas das principais diferenças entre ArrayList e LinkedList em Java são:
Lista de matrizes LinkedList
Implementa List interface Implementa List , Queue e Deque interfaces.
Armazena um único valor. Armazena 3 valores:dados, endereço anterior e próximo
Fornece a funcionalidade de uma matriz redimensionável. Fornece a funcionalidade de lista duplamente vinculada
Como converter um ArrayList em Array?
Podemos converter o ArrayList em uma matriz usando o toArray() método. Por exemplo,
import java.util.ArrayList;

class Main {
  public static void main(String[] args) {
    ArrayList<String> languages = new ArrayList<>();

    // add elements in the array list
    languages.add("Java");
    languages.add("Python");
    languages.add("C++");
    System.out.println("ArrayList: " + languages);

    // create a new array of String type
    String[] arr = new String[languages.size()];

    // convert ArrayList into an array
    languages.toArray(arr);
    System.out.print("Array: ");

    // access elements of the array
    for (String item : arr) {
      System.out.print(item + ", ");
    }
  }
}

Saída
ArrayList: [Java, Python, C++]
Array: Java, Python, C++, 

No exemplo acima, o toArray() O método converte os idiomas arraylist para um array e o armazena em arr . Para saber mais, visite Java ArrayList toArray().
Como converter um array para ArrayList?
Usamos o asList() método do Arrays classe. Para usar asList() , devemos importar o java.util.Arrays pacote primeiro. Por exemplo,
import java.util.ArrayList;
import java.util.Arrays;

class Main {
  public static void main(String[] args) {

    // create an array of String type
    String[] arr = { "Java", "Python", "C++" };
    System.out.print("Array: ");

    // print array
    for (String str : arr) {
      System.out.print(str);
      System.out.print(" ");
    }

    // create an ArrayList from an array
    ArrayList<String> languages = new ArrayList<>(Arrays.asList(arr));
    System.out.println("\nArrayList: " + languages);
  }
}

Saída
Array: Java Python C++        
ArrayList: [Java, Python, C++]

No programa acima, primeiro criamos um array arr do String modelo. Observe a expressão,
Arrays.asList(arr)

Aqui, o asList() O método converte a matriz em uma lista de matrizes.
Como criar e inicializar um ArrayList em uma única linha?
Usamos o Arrays.asList() método para criar e inicializar um arraylist em uma única linha. Por exemplo,
import java.util.ArrayList;
import java.util.Arrays;

class Main {
  public static void main(String[] args) {

    // create and initialize ArrayList
    ArrayList<String> languages = new ArrayList<>(Arrays.asList("Java", "Python", "C"));
    System.out.println("ArrayList: " + languages);

  }
}

// Output: ArrayList: [Java, Python, C]
Como converter um ArrayList em String?
Usamos o toString() método do ArrayList class para converter uma lista de matrizes em uma string. Por exemplo,
import java.util.ArrayList;

class Main {
  public static void main(String[] args) {
    ArrayList<String> languages = new ArrayList<>();

    // add elements in the ArrayList
    languages.add("Java");
    languages.add("Python");
    languages.add("Kotlin");
    System.out.println("ArrayList: " + languages);

    // convert ArrayList into a String
    String str = languages.toString();
    System.out.println("String: " + str);
  }
}

Saída
ArrayList: [Java, Python, Kotlin]
String: [Java, Python, Kotlin]

Aqui, o toString() O método converte toda a lista de matrizes em uma única string. Para saber mais, visite Java ArrayList toString().
Como criar um arraylist usando a interface List?
Também podemos criar um arraylist usando a interface List. É porque a classe ArrayList implementa a interface List. Vejamos um exemplo,
import java.util.ArrayList;
import java.util.List;

class Main {
  public static void main(String[] args) {

    // create arraylist using List
    List<String> languages = new ArrayList<>();
    languages.add("Java");
    languages.add("Python");
    languages.add("C");

    System.out.println("ArrayList: " + languages);
  }
}

// Output: ArrayList: [Java, Python, C]

Java

  1. Palavra-chave final Java
  2. Java instanceof Operator
  3. Classe estática aninhada em Java
  4. Classe anônima Java
  5. Classe Java Singleton
  6. Reflexão Java
  7. Vetor Java
  8. Algoritmos Java
  9. Classe Java ObjectOutputStream
  10. Genéricos Java