¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 5)
CRUD de usuarios en Java con ArrayList

CRUD de usuarios en Java con ArrayList

Anuncios
Publicidad

Este código implementa un CRUD (Crear, Leer, Actualizar y Eliminar) de usuarios en Java utilizando un ArrayList para almacenar los registros en memoria.

A través de un menú interactivo en consola, el programa permite al usuario crear nuevos registros, mostrar la lista completa, modificar datos existentes y eliminar usuarios por su ID. Además, se utiliza un contador para asignar identificadores automáticos y un Scanner para la entrada de datos, lo que hace que este ejemplo sea una práctica sencilla y clara para comprender cómo manejar colecciones y operaciones básicas en Java.

📎Simular la descarga de archivos en distintos hilos en Java


Código completo:

package com.mycompany.cruddeusuarios;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.Scanner;

public class CrudUsuarios {
// Creamos una Arraylist llamada usuarios de tipo Usuario 'hace referencia a la clase creada'.
// estático, pertenece a la clase y no a la instancia.
private static ArrayList usuarios = new ArrayList<>();
// Un contador donde guardaremos los ids automáticos.
private static int contadorId = 1;
// La clase Scanner para recibir datos del usuario.
private static Scanner sc = new Scanner(System.in);

public static void main(String[] args) {
int numero;
// Mientras no se pulse en salir el menú se seguirá ejecutando, 
 // pero al menos se ejecuta una vez:
do{
// Simplemente un menú de opciones,     
    System.out.println("---------- Menú de opciones --------");
    System.out.println("1º Crear usuario.....");
    System.out.println("2º Leer usuario.....");
    System.out.println("3º Actualizar usuario.....");
    System.out.println("4º Eliminar usuario.....");
    System.out.println("0º Salir.....");
    // Pedimos el valor númerico al usuario.
    numero = sc.nextInt();
    sc.nextLine(); // limpiar buffer
    switch (numero) {
        case 1:
            crearUsuario();
            break;
        case 2:
            leerusuario();
            break;
        case 3:
            actualizarUsuario();
            break;
        case 4:
            eliminarusuario();
            break;
        case 0:
            System.out.println("Saliendo...........");
            break;
        default:
            throw new AssertionError();
    }

}while(numero!=0);

 // Creamos los métodos que nos van a permitir nuestra tarea:
 // Método para crear usuario:
 // Solicitamos los datos del usuario.
}

public static void crearUsuario()
{
System.out.println("Ingrese el nombre del usuario: ");
String nombre = sc.nextLine();

System.out.println("Ingrese el email del usuario: ");
String email = sc.nextLine();

System.out.println("Ingrese la edad del usuario: ");
int edad = sc.nextInt();
// Creamos una instancia de usuario llamada usuarioUno.
// El constructor recibe los valores recibidos con la clase scanner.
// El id se autoincrementa, post-incremento"Devuelve el valor y luego incrementa"
Usuario usuario = new Usuario(contadorId++, nombre, email, edad);
// Añadimos el usuario a la lista de usuarios.
usuarios.add(usuario);
System.out.println("El usuario se ha creado con éxito");

}
// Recorremos la lista imprimiendo los usuarios almacenados.
public static void leerusuario()
{
// Si la lista está vacia deberíamos de informar de ello.
if (usuarios.isEmpty())
{
System.out.println("No existen usuarios en la lista…..");

   } else{
   for (Usuario usuarioR : usuarios) {
       System.out.println(usuarioR);
   }   
   }

}
// Actualizamos los datos, pero mostramos el anterior dato con el get
// y modificamos con el set.
public static void actualizarUsuario()
{
System.out.println("Debes proporcionar el id del usuario a actualizar");
int id = sc.nextInt();
sc.nextLine();

   for (Usuario usuarioA : usuarios) {

       if (usuarioA.getId() == id) {

           System.out.println("Nombre antiguo: " + usuarioA.getNombre());
           System.out.println("Ingrese su nuevo nombre");
           String nombre = sc.nextLine();
           System.out.println("Nombre nuevo: " + usuarioA.getNombre());
           usuarioA.setNombre(nombre);

           System.out.println("Email antiguo: " + usuarioA.getEmail());
           System.out.println("Ingrese su nuevo correo electrónico: ");
           String email = sc.nextLine();
           usuarioA.setEmail(email);
           System.out.println("Correo nuevo: " + usuarioA.getEmail());

           System.out.println("Edad antigua: " + usuarioA.getEdad());
           System.out.println("Ingrese su edad: ");
           int edad = sc.nextInt();
           usuarioA.setEdad(edad);
           System.out.println("Nueva edad: " + usuarioA.getEdad());
           System.out.println("Se ha modificado todos los datos con éxito");
       }

   } 

}
// Finalmente eliminamos el usuario seleccionado por el ID

public static void eliminarusuario() {
System.out.println("Introduce el ID a eliminar del usuario: ");
int id = sc.nextInt();
// Creamos un objeto de tipo iterator.
Iterator it = usuarios.iterator();
// Mientras que existan elementos.
while (it.hasNext()) {
// Pedimos el ID necesario.
Usuario usuarioE = it.next();
if (usuarioE.getId() == id) {
// Eliminamos mientras recorremos sin provocar errores.
it.remove();
System.out.println("El usuario con ID " + id + " ha sido eliminado");
return; // salir después de eliminar
}
}
System.out.println("No se encontró ningún usuario con el ID " + id);
}
}

CRUD de usuarios en Java con ArrayList
CRUD de usuarios en Java con ArrayList

Solución:
---------- Menú de opciones --------
1º Crear usuario…..
2º Leer usuario…..
3º Actualizar usuario…..
4º Eliminar usuario…..
0º Salir…..
El usuario ingresa: 1



Ingrese el nombre del usuario:
Juan
Ingrese el email del usuario:
mediana@outlook.es
Ingrese la edad del usuario:
29
El usuario se ha creado con éxito


---------- Menú de opciones --------
1º Crear usuario…..
2º Leer usuario…..
3º Actualizar usuario…..
4º Eliminar usuario…..
0º Salir…..
El usuario ingresa: 1
Ingrese el nombre del usuario:
Elena
Ingrese el email del usuario:
elena@outlook.es
Ingrese la edad del usuario:
56
El usuario se ha creado con éxito


---------- Menú de opciones --------
1º Crear usuario…..
2º Leer usuario…..
3º Actualizar usuario…..
4º Eliminar usuario…..
0º Salir…..


El usuario ingresa: 2


Usuario{id=1, nombre=Juan, email=mediana@outlook.es, edad=29}
Usuario{id=2, nombre=Elena, email=elena@outlook.es, edad=56}
---------- Menú de opciones --------
1º Crear usuario…..
2º Leer usuario…..
3º Actualizar usuario…..
4º Eliminar usuario…..
0º Salir…..

El usuario ingresa: 3


Debes proporcionar el id del usuario a actualizar.


El usuario ingresa: 1
Nombre antiguo: Juan
Ingrese su nuevo nombre
El usuario ingresa: Alex
Nombre nuevo: Juan
Email antiguo: mediana@outlook.es
Ingrese su nuevo correo electrónico:
El usuario ingresa: alex@hotmai.com
Correo nuevo: alex@hotmai.com
edad antigua: 29
Ingrese su edad:
El usuario ingresa: 45
Nueva edad: 45
Se ha modificado todos los datos con éxito


---------- Menú de opciones --------
1º Crear usuario…..
2º Leer usuario…..
3º Actualizar usuario…..
4º Eliminar usuario…..
0º Salir…..
4
Introduce el ID a eliminar del usuario:
El usuario ingresa: 3


No se encontró ningún usuario con el ID 3


---------- Menú de opciones --------
1º Crear usuario…..
2º Leer usuario…..
3º Actualizar usuario…..
4º Eliminar usuario…..
0º Salir…..
El usuario ingresa: 0
Saliendo………..

Seguir leyendo:

¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 5)

Deja un comentario

¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 5)
error: Content is protected !!
Scroll al inicio
Hablemos de informática
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.