JavaRush /Blogue Java /Random-PT /Pausa para café #144. Como converter um array em List (Ar...

Pausa para café #144. Como converter um array em List (ArrayList) em Java. Injeção de Dependência em Java

Publicado no grupo Random-PT

Como converter array em lista (ArrayList) em Java

Fonte: Rrtutors Hoje você aprenderá sobre diferentes maneiras de converter um array em uma Lista (ArrayList) e verá exemplos de código em cada uma delas. Pausa para café #144.  Como converter um array em List (ArrayList) em Java.  Injeção de Dependência em Java - 1Embora os arrays sejam simples e fáceis de usar, eles têm muitas limitações, como tamanho fixo. Isso torna difícil adicionar um novo elemento no início e reorganizar os elementos. Graças ao Collections Framework, podemos implementar List, Set e Queue de diferentes maneiras. Por exemplo, usando uma lista universal e flexível de arrays (ArrayList). Existem três métodos que você pode usar ao converter um array em Java. Esses métodos incluem:
  1. Método Ingênuo ou de Força Bruta.
  2. Método Arrays.asList() .
  3. Método Collections.addAll() .

Usando um método ingênuo ou de força bruta

Neste método, uma lista é criada a partir de um array vazio e cada elemento do array é adicionado a ela um por um. O método funciona depois de fazer o seguinte:
  • Obtenha a matriz.
  • Crie uma lista vazia.
  • Faça um loop pelos elementos da matriz.
  • Agora adicione cada elemento ao array.
  • Devolva a lista completa.
Este exemplo converte um array de frutas em uma lista de frutas:
import java.util.ArrayList;

import java.util.Arrays;

import java.util.List;

public class NaivemethodExample {

    public static <T> List<T> convertArrayToList(T array[])

    {

        List<T> list = new ArrayList<>();

        for (T t : array) {

            list.add(t);

        }

        return list;

    }

    public static void main(String args[])

    {

        String array[]

            = { "Mangoes", "Oranges", "berries" };

        System.out.println("Array: "

                           + Arrays.toString(array));

        List<String> list = convertArrayToList(array);

        System.out.println("List: " + list);

    }

}

Método Arrays.asList()

Usando o método Arrays.asList() , um array é passado para o construtor List como um parâmetro para o construtor. Para converter um array em uma lista aqui você precisa seguir os seguintes passos:
  • Obtenha a matriz.
  • Crie uma lista passando o array como parâmetro no construtor da lista.
  • Devolva a lista completa.
Aqui está um exemplo de uso do método Arrays.asList() para converter um array de frutas em uma lista:
package asList;

import java.util.Arrays;

import java.util.List;

public class asListExample {

    public static <T> List<T> convertArrayToList(T array[])

    {

        List<T> list = Arrays.asList(array);

        return list;

    }

    public static void main(String args[])

    {

        String array[]

            = { "Mangoes", "Oranges", "berries" };

        System.out.println("Array: "

                          + Arrays.toString(array));

        List<String> list = convertArrayToList(array);

        System.out.println("List: " + list);

    }

}

Método Collections.addAll()

Como as listas fazem parte do pacote Collection em Java, você pode converter um array em uma lista usando o método Collections.addAll() . Este método converte um array em uma lista usando as seguintes etapas:
  • Obtemos uma matriz.
  • Crie uma lista vazia.
  • Vamos converter o array em uma lista usando o método Collections.addAll() .
  • Retornamos uma lista.
Exemplo:
import java.util.ArrayList;

import java.util.Arrays;

import java.util.Collections;

import java.util.List;

public class collectionsall {

    public static <T> List<T> convertArrayToList(T array[])

    {

        List<T> list = new ArrayList<>();

        Collections.addAll(list, array);

        return list;

    }



    public static void main(String args[])

    {

        String array[]

            = { "peas", "tomatoes", "water melons" };

        System.out.println("Array: "

                           + Arrays.toString(array));

        List<String> list = convertArrayToList(array);

        System.out.println("List: " + list);

    }

}
Conclusão:
Matriz: [ervilhas, tomates, melancias] Lista: [ervilhas, tomates, melancias]

Injeção de Dependência em Java

Fonte: Médio Neste post você aprenderá o que é injeção de dependência em Java, onde ela é usada e quais benefícios ela proporciona ao desenvolvedor. Pausa para café #144.  Como converter um array em List (ArrayList) em Java.  Injeção de Dependência em Java - 2Injeção de Dependência (DI) é o processo de fornecer uma dependência externa a um componente de software. A injeção de dependência visa separar os problemas de criação de objetos do seu uso. O princípio de incorporação pressupõe que um objeto ou função que queira utilizar um determinado serviço não precisa saber como criá-lo. Em vez disso, o "cliente" receptor (objeto ou função) recebe suas dependências de código externo (um "injetor") do qual não tem conhecimento. Aqui está um bom exemplo. Quando uma classe X usa alguma funcionalidade de uma classe Y, dizemos que a classe X depende da classe Y. A injeção de dependência permite criar objetos dependentes fora da classe e expõe esses objetos à classe de várias maneiras. Nesse caso, a criação e a ligação de objetos dependentes são movidas para fora da classe que deles depende. O padrão de injeção de dependência inclui três tipos de classes:
  1. Classe de serviço que fornece serviços a uma classe de cliente.
  2. Classe Cliente - uma classe que depende da classe de serviço.
  3. Classe Injector é uma classe que injeta um objeto de classe de serviço em uma classe cliente.

Tipos de injeção de dependência

Existem três tipos de injeção de dependência:
  1. Injeção de Construtor - Quando ocorre injeção de construtor , o injetor fornece um serviço (dependência) através do construtor da classe cliente.
  2. Injeção de Setter - Neste tipo de injeção (também conhecida como injeção de propriedade), o injetor expõe uma dependência através de uma propriedade pública da classe cliente.
  3. Injeção de Método - Neste tipo de injeção, a classe cliente implementa uma interface que declara o(s) método(s) para fornecer a dependência. O injetor usa essa interface para fornecer a dependência à classe cliente.

Benefícios da injeção de dependência

A implementação da injeção de dependência nos oferece as seguintes vantagens:
  • Reutilização de código.
  • Facilidade de refatoração.
  • Facilidade de teste.
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION