Introducció a ArrayList
ArrayList
és una classe de la col·lecció de Java que implementa la interfície List
. És una estructura de dades dinàmica que permet emmagatzemar elements de manera ordenada i accedir-hi per la seva posició (índex). A diferència dels arrays tradicionals, els ArrayList
poden canviar de mida dinàmicament.
Característiques Principals
- Dinàmic: La mida de l'
ArrayList
pot canviar durant l'execució del programa. - Indexat: Els elements es poden accedir per la seva posició (índex).
- Permet duplicats: Els
ArrayList
poden contenir elements duplicats. - Permet elements null: Els
ArrayList
poden contenir elements null.
Creació d'un ArrayList
Per crear un ArrayList
, primer hem d'importar la classe des del paquet java.util
.
import java.util.ArrayList; public class ExempleArrayList { public static void main(String[] args) { // Creació d'un ArrayList de Strings ArrayList<String> llista = new ArrayList<>(); // Afegir elements a l'ArrayList llista.add("Hola"); llista.add("Món"); llista.add("!"); // Imprimir l'ArrayList System.out.println(llista); } }
Explicació del Codi
- Importació:
import java.util.ArrayList;
importa la classeArrayList
. - Creació:
ArrayList<String> llista = new ArrayList<>();
crea unArrayList
deString
. - Afegir Elements:
llista.add("Hola");
afegeix elements a l'ArrayList
. - Imprimir:
System.out.println(llista);
imprimeix el contingut de l'ArrayList
.
Operacions Bàsiques amb ArrayList
Afegir Elements
Accedir a Elements
String element = llista.get(0); // Obtenir l'element a la posició 0 System.out.println(element); // Imprimir "Hola"
Modificar Elements
Eliminar Elements
llista.remove(2); // Eliminar l'element a la posició 2 llista.remove("Hola"); // Eliminar l'element "Hola"
Obtenir la Mida
int mida = llista.size(); // Obtenir la mida de l'ArrayList System.out.println(mida); // Imprimir la mida
Comprovar si Conté un Element
boolean conté = llista.contains("Món"); // Comprovar si l'ArrayList conté "Món" System.out.println(conté); // Imprimir true o false
Iterar sobre un ArrayList
Utilitzant un Bucle For
Utilitzant un Bucle For-Each
Exercicis Pràctics
Exercici 1: Crear i Manipular un ArrayList
- Crea un
ArrayList
deInteger
. - Afegeix els números 1, 2, 3, 4 i 5 a l'
ArrayList
. - Imprimeix l'
ArrayList
. - Elimina el número 3 de l'
ArrayList
. - Modifica el número 4 per 40.
- Imprimeix l'
ArrayList
resultant.
Solució
import java.util.ArrayList; public class ExerciciArrayList { public static void main(String[] args) { ArrayList<Integer> numeros = new ArrayList<>(); // Afegir elements numeros.add(1); numeros.add(2); numeros.add(3); numeros.add(4); numeros.add(5); // Imprimir l'ArrayList System.out.println("Inicial: " + numeros); // Eliminar el número 3 numeros.remove(Integer.valueOf(3)); // Modificar el número 4 per 40 numeros.set(numeros.indexOf(4), 40); // Imprimir l'ArrayList resultant System.out.println("Resultant: " + numeros); } }
Exercici 2: Iterar i Comprovar Elements
- Crea un
ArrayList
deString
. - Afegeix els elements "Java", "Python", "C++" i "JavaScript".
- Itera sobre l'
ArrayList
i imprimeix cada element. - Comprova si l'
ArrayList
conté "Python" i imprimeix el resultat.
Solució
import java.util.ArrayList; public class ExerciciIteracio { public static void main(String[] args) { ArrayList<String> llenguatges = new ArrayList<>(); // Afegir elements llenguatges.add("Java"); llenguatges.add("Python"); llenguatges.add("C++"); llenguatges.add("JavaScript"); // Iterar i imprimir cada element for (String llenguatge : llenguatges) { System.out.println(llenguatge); } // Comprovar si conté "Python" boolean contéPython = llenguatges.contains("Python"); System.out.println("Conté Python: " + contéPython); } }
Conclusió
Els ArrayList
són una eina poderosa i flexible per treballar amb col·leccions d'elements en Java. La seva capacitat per canviar de mida dinàmicament i la facilitat d'ús els fan ideals per a moltes aplicacions. En aquest tema, hem après a crear, manipular i iterar sobre ArrayList
, així com a realitzar operacions bàsiques com afegir, eliminar i modificar elements. Amb aquests coneixements, estàs preparat per utilitzar ArrayList
en els teus projectes de programació en Java.
Curs de Programació en Java
Mòdul 1: Introducció a Java
- Introducció a Java
- Configuració de l'Entorn de Desenvolupament
- Sintaxi i Estructura Bàsica
- Variables i Tipus de Dades
- Operadors
Mòdul 2: Flux de Control
Mòdul 3: Programació Orientada a Objectes
- Introducció a la POO
- Classes i Objectes
- Mètodes
- Constructors
- Herència
- Polimorfisme
- Encapsulació
- Abstracció
Mòdul 4: Programació Orientada a Objectes Avançada
Mòdul 5: Estructures de Dades i Col·leccions
Mòdul 6: Gestió d'Excepcions
Mòdul 7: Entrada/Sortida de Fitxers
- Lectura de Fitxers
- Escriptura de Fitxers
- Fluxos de Fitxers
- BufferedReader i BufferedWriter
- Serialització
Mòdul 8: Multithreading i Concurrència
- Introducció al Multithreading
- Creació de Fils
- Cicle de Vida dels Fils
- Sincronització
- Utilitats de Concurrència
Mòdul 9: Xarxes
- Introducció a les Xarxes
- Sockets
- ServerSocket
- DatagramSocket i DatagramPacket
- URL i HttpURLConnection