Come convertire l'array in List (ArrayList) in Java
Fonte: Rrtutors Oggi imparerai diversi modi per convertire un array in un elenco (ArrayList) e guarderai esempi di codice in ciascuno di essi. Sebbene gli array siano semplici e facili da usare, presentano molte limitazioni, come la dimensione fissa. Ciò rende difficile aggiungere un nuovo elemento all'inizio e riorganizzare gli elementi. Grazie al Collections Framework possiamo implementare List, Set e Queue in diversi modi. Ad esempio, utilizzando un elenco universale e flessibile di array (ArrayList). Esistono tre metodi che è possibile utilizzare durante la conversione di un array in Java. Questi metodi includono:- Metodo ingenuo o forza bruta.
- Metodo Arrays.asList() .
- Metodo Collections.addAll() .
Utilizzando un metodo ingenuo o di forza bruta
In questo metodo, viene creato un elenco da un array vuoto e ciascun elemento dell'array viene aggiunto ad esso uno per uno. Il metodo funziona dopo aver effettuato quanto segue:- Ottieni la matrice.
- Crea un elenco vuoto.
- Passa in rassegna gli elementi dell'array.
- Ora aggiungi ogni elemento all'array.
- Restituisci l'elenco completo.
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);
}
}
Metodo Arrays.asList()
Utilizzando il metodo Arrays.asList() , un array viene passato al costruttore List come parametro del costruttore. Per convertire un array in un elenco qui è necessario seguire i seguenti passaggi:- Ottieni la matrice.
- Crea un elenco passando l'array come parametro nel costruttore dell'elenco.
- Restituisci l'elenco completo.
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);
}
}
Metodo Collections.addAll()
Poiché gli elenchi fanno parte del pacchetto Collection in Java, puoi convertire un array in un elenco utilizzando il metodo Collections.addAll() . Questo metodo converte un array in un elenco utilizzando i seguenti passaggi:- Otteniamo un array.
- Crea un elenco vuoto.
- Convertiamo l'array in un elenco utilizzando il metodocollection.addAll() .
- Restituiamo un elenco.
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);
}
}
Conclusione:
Matrice: [piselli, pomodori, angurie] Elenco: [piselli, pomodori, angurie]
Iniezione di dipendenze in Java
Fonte: Medium In questo post imparerai cos'è l'iniezione delle dipendenze in Java, dove viene utilizzata e quali vantaggi offre allo sviluppatore. Dependency Injection (DI) è il processo di fornitura di una dipendenza esterna a un componente software. L'inserimento delle dipendenze mira a separare i problemi legati alla creazione di oggetti dal loro utilizzo. Il principio di incorporamento presuppone che un oggetto o una funzione che voglia utilizzare un determinato servizio non abbia bisogno di sapere come crearlo. Invece, il "client" ricevente (oggetto o funzione) riceve le sue dipendenze da codice esterno (un "iniettore") di cui non è a conoscenza. Ecco un buon esempio. Quando una classe X utilizza alcune funzionalità di una classe Y, diciamo che la classe X ha una dipendenza dalla classe Y. L'inserimento delle dipendenze consente di creare oggetti dipendenti all'esterno della classe ed espone tali oggetti alla classe in vari modi. In questo caso, la creazione e l'associazione degli oggetti dipendenti vengono spostati all'esterno della classe che dipende da essi. Il modello di inserimento delle dipendenze include tre tipi di classi:- Classe di servizio che fornisce servizi a una classe client.
- Classe client: una classe che dipende dalla classe di servizio.
- La classe Injector è una classe che inserisce un oggetto della classe di servizio in una classe client.
Tipi di inserimento delle dipendenze
Esistono tre tipi di inserimento delle dipendenze:- Iniezione del costruttore: quando si verifica l'iniezione del costruttore , l'iniettore fornisce un servizio (dipendenza) tramite il costruttore della classe client.
- Setter Injection : in questo tipo di injection (noto anche come property injection), l'iniettore espone una dipendenza attraverso una proprietà pubblica della classe client.
- Iniezione di metodi : in questo tipo di iniezione, la classe client implementa un'interfaccia che dichiara i metodi per fornire la dipendenza. L'iniettore utilizza questa interfaccia per fornire la dipendenza alla classe client.
Vantaggi dell'iniezione delle dipendenze
L'implementazione dell'iniezione di dipendenza ci offre i seguenti vantaggi:- Riutilizzo del codice.
- Facilità di refactoring.
- Facilità di test.
GO TO FULL VERSION