mirror of
https://gitlab.com/tutorial-java-rafa-munoz/tutorial-java-2024-25/tutorialjava2024-25.git
synced 2025-11-09 18:03:09 +01:00
feat(ch 6): solved ex block 1
This commit is contained in:
@@ -10,6 +10,7 @@ public class Ejemplo01_ListasConInteger {
|
||||
// Declarado la lista de Integers
|
||||
List<Integer> numeros = new ArrayList<Integer>();
|
||||
|
||||
|
||||
// Inicializar con 10 elementos de tipo Integer
|
||||
for (int i = 0; i < 10; i++) {
|
||||
// numeros.add(new Integer(100 + i)); // Deprecado
|
||||
@@ -21,10 +22,10 @@ public class Ejemplo01_ListasConInteger {
|
||||
numeros.add(1000);
|
||||
|
||||
// Elimino un elemento
|
||||
numeros.remove(2);
|
||||
numeros.remove(Integer.valueOf(102));
|
||||
|
||||
// Inserto un elemento en una posición concreta
|
||||
numeros.add(1, 5000);
|
||||
numeros.add(2, 5000);
|
||||
|
||||
// Crear una nueva lista
|
||||
List<Integer> numerosNegativos = new ArrayList<Integer>();
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package tutorialJava.capitulo6_ColeccionesDeDatos.ejemplo01_ListYArrayList.cromosBaloncesto;
|
||||
|
||||
public class CromoBaloncesto {
|
||||
|
||||
private int id;
|
||||
private String nombre;
|
||||
/**
|
||||
|
||||
@@ -13,32 +13,30 @@ public class EjemploListasCromos {
|
||||
List<CromoBaloncesto> lista = new ArrayList<CromoBaloncesto>();
|
||||
lista.add(c1);
|
||||
lista.add(c2);
|
||||
lista.add(10, c3);
|
||||
lista.add(c3);
|
||||
|
||||
for (CromoBaloncesto c : lista) {
|
||||
System.out.println(c.getNombre());
|
||||
}
|
||||
|
||||
CromoBaloncesto c4 = new CromoBaloncesto(4, "Araceli Pacheco");
|
||||
CromoBaloncesto c5 = new CromoBaloncesto(5, "María Jesús Joyanes");
|
||||
CromoBaloncesto c6 = new CromoBaloncesto(6, "Candela Écija");
|
||||
|
||||
List<CromoBaloncesto> lista2 = new ArrayList<CromoBaloncesto>();
|
||||
lista2.add(c4);
|
||||
lista2.add(c5);
|
||||
lista2.add(c6);
|
||||
|
||||
// CromoBaloncesto c4 = new CromoBaloncesto(4, "Cristina Castro");
|
||||
// CromoBaloncesto c5 = new CromoBaloncesto(5, "María Jesús Joyanes");
|
||||
// CromoBaloncesto c6 = new CromoBaloncesto(6, "Alazne Ruiz");
|
||||
//
|
||||
// List<CromoBaloncesto> lista2 = new ArrayList<CromoBaloncesto>();
|
||||
// lista2.add(c4);
|
||||
// lista2.add(c5);
|
||||
// lista2.add(c6);
|
||||
//
|
||||
// lista.addAll(1, lista2);
|
||||
//
|
||||
// lista.removeAll(lista);
|
||||
//
|
||||
// System.out.println("VAcía: " + lista.isEmpty());
|
||||
//
|
||||
// for (CromoBaloncesto c : lista) {
|
||||
// System.out.println(c.toString());
|
||||
// }
|
||||
lista.addAll(1, lista2);
|
||||
|
||||
lista.removeAll(lista);
|
||||
|
||||
System.out.println("VAcía: " + lista.isEmpty());
|
||||
|
||||
for (CromoBaloncesto c : lista) {
|
||||
System.out.println(c.toString());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,13 +19,11 @@ public class EjemploHashMap {
|
||||
hm.put("4", new Persona ("44444444A", "Torralbo Torralbo", "Patricia"));
|
||||
hm.put("5", new Persona ("55555555A", "Lérida Lérida", "Lucía"));
|
||||
|
||||
|
||||
// Recuperación de datos en un HashMap general
|
||||
System.out.println("Objeto con id 1: " + hm.get("1")); // Recuperación de un solo objeto
|
||||
|
||||
// Inserción de un objeto con un tipo de identificador diferente
|
||||
hm.put(Integer.valueOf(6), new Persona ("66666666A", "Ramírez Ramírez", "Ramiro"));
|
||||
|
||||
hm.put(6, new Persona ("66666666A", "Ramírez Ramírez", "Ramiro"));
|
||||
|
||||
// Recuperación de todas las claves de objetos en el HM
|
||||
System.out.println("\nRecorrido del HashMap:");
|
||||
@@ -50,7 +48,7 @@ public class EjemploHashMap {
|
||||
hm.put("3", new Persona ("33333333A", "Cuenca Cuenca", "Juan"));
|
||||
hm.put("4", new Persona ("44444444A", "Torralbo Torralbo", "Patricia"));
|
||||
hm.put("5", new Persona ("55555555A", "Lérida Lérida", "Lucía"));
|
||||
|
||||
|
||||
// Eliminación de algún elemento en el HM
|
||||
hm.remove("5");
|
||||
|
||||
@@ -69,7 +67,7 @@ public class EjemploHashMap {
|
||||
* @param args
|
||||
*/
|
||||
public static void main (String args[]) {
|
||||
ejemploHashMapGeneral();
|
||||
//ejemploHashMapEspecifico();
|
||||
// ejemploHashMapGeneral();
|
||||
ejemploHashMapEspecifico();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,125 @@
|
||||
package tutorialJava.capitulo6_ColeccionesDeDatos.ejercicios.bloque01_listas;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Scanner;
|
||||
|
||||
import tutorialJava.Utils;
|
||||
|
||||
public class Ejercicio01_ListasConInteger {
|
||||
|
||||
private static List<Integer> enteros = new ArrayList<Integer>();
|
||||
|
||||
|
||||
public static void main(String[] args) {
|
||||
int opcionMenu = 0, posicionAInsertar;
|
||||
|
||||
do {
|
||||
opcionMenu = mostrarMenu();
|
||||
|
||||
switch(opcionMenu) {
|
||||
case 1: // Crear aleatoriamente la lista de valores
|
||||
enteros.clear();
|
||||
enteros.addAll(creaLista());
|
||||
break;
|
||||
case 2: // suma, media, mayor y menor
|
||||
calculaSumaMediaMayorMenor();
|
||||
break;
|
||||
case 3: // agregar una nueva cantidad de valores
|
||||
posicionAInsertar = Utils.obtenerEnteroConDescripcion("Dime la posición a "
|
||||
+ "insertar los nuevos valores en la lista");
|
||||
enteros.addAll(posicionAInsertar, creaLista());
|
||||
break;
|
||||
case 4: // Eliminar elementos dentro de un intervalo
|
||||
int eliminados = eliminarElementosEnIntervalo(
|
||||
Utils.obtenerEnteroConDescripcion("Dame un mínimo para eliminar: "),
|
||||
Utils.obtenerEnteroConDescripcion("Dame un máximo para eliminar: "));
|
||||
System.out.println("Se han eliminado: " + eliminados);
|
||||
break;
|
||||
case 5: // Imprime la lista
|
||||
for (Integer e : enteros) {
|
||||
System.out.print(e.intValue() + " ");
|
||||
}
|
||||
System.out.println();
|
||||
}
|
||||
} while(opcionMenu != 0);
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Este método.......
|
||||
* @param min Este parámetro....
|
||||
* @param max
|
||||
*/
|
||||
private static int eliminarElementosEnIntervalo (int min, int max) {
|
||||
int contEliminados = 0;
|
||||
for (int i = enteros.size()-1; i > -1 ; i--) {
|
||||
if (enteros.get(i).intValue() > min && enteros.get(i).intValue() < max) {
|
||||
enteros.remove(i);
|
||||
contEliminados++;
|
||||
}
|
||||
}
|
||||
return contEliminados;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static void calculaSumaMediaMayorMenor () {
|
||||
int suma = 0;
|
||||
int mayor = enteros.get(0).intValue();
|
||||
int menor = enteros.get(0).intValue();
|
||||
|
||||
for (Integer entero : enteros) {
|
||||
suma += entero.intValue();
|
||||
if (entero.intValue() > mayor) {
|
||||
mayor = entero.intValue();
|
||||
}
|
||||
if (entero.intValue() < menor) {
|
||||
menor = entero.intValue();
|
||||
}
|
||||
}
|
||||
|
||||
System.out.println("La suma vale: " + suma);
|
||||
System.out.println("La media vale: " + (suma / (float) enteros.size()) );
|
||||
System.out.println("El menor es: " + menor);
|
||||
System.out.println("El mayor es: " + mayor);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static List<Integer> creaLista () {
|
||||
List<Integer> lista = new ArrayList<Integer>();
|
||||
int longitud = Utils.obtenerEnteroConDescripcion("Dame la longitud de la lista: ");
|
||||
int max = Utils.obtenerEnteroConDescripcion("Valor máximo: ");
|
||||
int min = Utils.obtenerEnteroConDescripcion("Valor mínimo: ");
|
||||
|
||||
for (int i = 0; i < longitud; i++) {
|
||||
lista.add(Utils.obtenerNumeroAzar(min, max));
|
||||
}
|
||||
return lista;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
private static int mostrarMenu() {
|
||||
System.out.println("MENÚ DEL PROGRAMA");
|
||||
System.out.println("0.- Abandonar programa");
|
||||
System.out.println("1.- Crear aleatoriamente lista de valores");
|
||||
System.out.println("2.- Calcular suma, media, mínimo y máximo.");
|
||||
System.out.println("3.- Agregar cantidad nuevos valores");
|
||||
System.out.println("4.- Eliminar elementos en un intervalo");
|
||||
System.out.println("5.- Imprimir lista");
|
||||
|
||||
System.out.println("Escribe la opción (0-5):");
|
||||
return new Scanner(System.in).nextInt();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
package tutorialJava.capitulo6_ColeccionesDeDatos.ejercicios.bloque01_listas;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Scanner;
|
||||
|
||||
import tutorialJava.Utils;
|
||||
|
||||
public class FicheroTextoConListaDeStrings {
|
||||
|
||||
private static List<String> fichero = new ArrayList<String>();
|
||||
private static List<String> portapapeles = new ArrayList<String>();
|
||||
|
||||
/**
|
||||
*
|
||||
* @param args
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
int opcion;
|
||||
|
||||
do {
|
||||
opcion = mostrarMenu();
|
||||
|
||||
switch (opcion) {
|
||||
case 1: // Agregar una línea al final del fichero
|
||||
fichero.add(Utils.obtenerCadenaConDescripcion("Inserte la nueva línea: "));
|
||||
break;
|
||||
case 2: // Insertar una línea en cualquier lugar del fichero
|
||||
fichero.add(
|
||||
Utils.obtenerEnteroConDescripcion("Dame una posición para insertar la línea:"),
|
||||
Utils.obtenerCadenaConDescripcion("Dame la nueva línea: "));
|
||||
break;
|
||||
case 3: // Editar una línea
|
||||
int posicionAEditar = Utils.obtenerEnteroConDescripcion("Posición a editar: ");
|
||||
fichero.remove(posicionAEditar);
|
||||
fichero.add(
|
||||
posicionAEditar,
|
||||
Utils.obtenerCadenaConDescripcion("Dame la nueva línea: "));
|
||||
break;
|
||||
case 4: // elimiar una línea
|
||||
fichero.remove(Utils.obtenerEnteroConDescripcion("Indica la línea a eliminar: "));
|
||||
break;
|
||||
case 5: // Llevar al portapapeles un conjunto de líneas
|
||||
int lineaIni = Utils.obtenerEnteroConDescripcion("Primera línea a cortar: ");
|
||||
int lineaFin = Utils.obtenerEnteroConDescripcion("Última línea a cortar: ");
|
||||
|
||||
portapapeles.clear();
|
||||
for (int i = lineaIni; i <= lineaFin; i++) {
|
||||
portapapeles.add(fichero.get(lineaIni));
|
||||
fichero.remove(lineaIni);
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
fichero.addAll(
|
||||
Utils.obtenerEnteroConDescripcion("Indica dónde quieres insertar "
|
||||
+ "las linás cortadas: "),
|
||||
portapapeles);
|
||||
break;
|
||||
case 7: // Ver el fichero
|
||||
System.out.println("Contenido del fichero: ");
|
||||
for (String linea : fichero) {
|
||||
System.out.println(linea);
|
||||
}
|
||||
System.out.println("\n");
|
||||
|
||||
break;
|
||||
}
|
||||
} while (opcion != 0);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
private static int mostrarMenu() {
|
||||
System.out.println("MENÚ DEL PROGRAMA");
|
||||
System.out.println("0.- Abandonar programa");
|
||||
System.out.println("1.- Agregar una línea al texto");
|
||||
System.out.println("2.- Insertar una línea en cualquier posición del texto.");
|
||||
System.out.println("3.- Editar una línea (reescribir su contenido)");
|
||||
System.out.println("4.- Borrar una línea");
|
||||
System.out.println("5.- Cortar un conjunto de líneas, (marcadas por su posición inicial y final).");
|
||||
System.out.println("6.- Pegar un conjunto de líneas, (marcadas por su posición).");
|
||||
System.out.println("7.- Imprimir el fichero");
|
||||
|
||||
System.out.println("Escribe la opción (0-7):");
|
||||
return new Scanner(System.in).nextInt();
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user