import java.util.Arrays; public class ArraysJava { public static void main(String[] args) { String[] aulas= new String[5]; // aulas:{...} Espacio vacío de 5 posiciones // Mostrar mostrar(aulas); // Nos rellena un array con el valor que le digamos Arrays.fill(aulas, "SIN NOMBRE"); // Mostrar mostrar(aulas); //Asignar un valor individual a cada aula con el número for(int i=1;i<=aulas.length;i++) { aulas[i-1]="AULA "+i; } //Mostrar mostrar(aulas); // Cambiar el valor por índice aulas[2]="AUla Música"; aulas[4]="AUla auxiliar"; // Mostrar mostrar(aulas); // Ordenar aulas Arrays.sort(aulas); mostrar(aulas); // Sin importar mayúsculas/minúsculas Arrays.sort(aulas, String.CASE_INSENSITIVE_ORDER); mostrar(aulas); // Orden inverso Arrays.sort(aulas, Collections.reverseOrder()); mostrar(aulas); } static void mostrar(String[] tabla) { for(String el:tabla) { System.out.println(el); } } }
Categoría: Java
Arrays en Java
https://www.w3schools.com/java/java_arrays.asp
https://www.tutorialspoint.com/java/java_arrays.htm
package com.trifulcas.saludo; public class ArraysJava { public static void main(String[] args) { String nombre; String[] nombres = { "Juan", "Eva", "Ana" }; String[] alumnos = { "Juan", "Pepe", "Ana" }; String[] aulas= new String[5]; System.out.println(nombres[1]); // For tradicional for (int i = 0; i < nombres.length; i++) { System.out.println(nombres[i]); } // Foreach for (String n : nombres) { System.out.println(n); } System.out.println(estaEva(nombres)); System.out.println(estaEva(alumnos)); int[] longitudes=longitudes(alumnos); for (int a : longitudes) { System.out.println(a); } } public static boolean estaEva(String[] nombres) { for (String n : nombres) { if (n == "Eva") { return true; } } return false; } public static int[] longitudes(String[] nombres) { int[] l = new int[nombres.length]; for (int i = 0; i < nombres.length; i++) { l[i] = nombres[i].length(); } return l; } }
Ejercicios java
Vamos a hacer un programa que nos pida un nombre y si la longitud del nombre es mayor de 10 nos diga ‘¡Que nombre más largo!’.
Cread un progrma que nos pida dos números y nos diga cual es el mayor.
Otro que nos pida dos números y nos diga si los dos son pares o los dos son impares.
Cread una función que nos calcule el área de un círculo y otra que nos calcule la circunferencia.
Con esta función cread un programa que nos vaya pidiendo radios y nos muestre el valor del área y de la circunferencia de un círculo con el radio que nos han dado. Cuando el usuario introduzca un 0 salimos del programa.
Cread una función a la que le pasemos una cadena y un número y nos devuelva esa cadena repetida n veces.
Con esa función cread otra a la que le pasemos una letra y haga lo siguiente:
si la longitud de la cadena que le pasamos es diferente de ‘1’ mostrar la cadena.
Si la longitud es 1 mostrar el arbolito siguiente hasta 5:
A
AA
AAA
AAAA
AAAAA
Cread una sobrecarga de la función para que podamos pasar un número que será el tamaño del arbolito.
package com.trifulcas.saludo; import java.util.Scanner; public class Ejercicios1 { public static void main(String[] args) { Scanner in = new Scanner(System.in); // Nombre más largo de 10 System.out.println("Introduce tu nombre"); String nombre=in.nextLine(); if (nombre.length()>10) { System.out.println("Que nombre más largo"); } // Número mayor System.out.println("Introduce el número 1"); int a=in.nextInt(); System.out.println("Introduce el número 2"); int b=in.nextInt(); System.out.println("El número mayor es "+Math.max(a, b)); // Paridad de dos números System.out.println("Introduce el número 1"); a = in.nextInt(); System.out.println("Introduce el número 2"); b = in.nextInt(); if (esPar(a) == esPar(b)) { System.out.println("Los dos tienen la misma paridad"); } else { System.out.println("Los dos tienen distinta paridad"); } //Usando operador ternario System.out.println("Los dos tienen " + (esPar(a) == esPar(b) ? "la misma" : "distinta") + " paridad"); in.close(); } // Función que nos devuelve si un número es par public static boolean esPar(int num) { return num % 2 == 0; } }
package com.trifulcas.saludo; import java.util.Scanner; public class Ejercicios2 { public static void main(String[] args) { double radio; Scanner in = new Scanner(System.in); do { System.out.println("Introduce el radio"); radio = in.nextDouble(); if (radio != 0) { System.out.println("El círculo de radio " + radio + " tiene una circunferencia de " + circunferencia(radio) + " y un área de " + area(radio)); } } while (radio != 0); in.close(); } public static double area(double radio) { return Math.PI * radio * radio; } public static double circunferencia(double radio) { return Math.PI * radio * 2; } }
package com.trifulcas.saludo; import java.util.Scanner; public class Ejercicio2b { public static void main(String[] args) { double radio; Scanner in = new Scanner(System.in); while (true) { System.out.println("Introduce el radio"); radio = in.nextDouble(); if (radio == 0) { break; } System.out.println("El círculo de radio " + radio + " tiene una circunferencia de " + circunferencia(radio) + " y un área de " + area(radio)); } in.close(); } public static double area(double radio) { return Math.PI * radio * radio; } public static double circunferencia(double radio) { return Math.PI * radio * 2; } }
package com.trifulcas.saludo; public class Ejercicio3 { public static void main(String[] args) { System.out.println(arbol("hola")); System.out.println(arbol("J")); System.out.println(arbol("@")); System.out.println(arbol("@", 3)); System.out.println(arbol("@", 8)); } public static double iva(double precio) { return iva(precio,.21); } public static double iva(double precio,double iva) { return precio*(1+iva); } public static String arbol(String cadena) { return arbol(cadena, 5); } public static String arbol(String cadena, int veces) { if (cadena.length() != 1) { return cadena; } String res = ""; for (int i = 0; i < veces; i++) { res += repetir(cadena, i + 1) + "\n"; } return res; } public static String repetir(String cadena, int veces) { String res = ""; for (int i = 0; i < veces; i++) { res += cadena; } return res; } }
Sobrecarga
public static void main(String[] args) { saludo("Ana", 2); saludo("Juan", 3); saludo("Eva"); saludo(3); int a = doble(7); System.out.println(a); int b = doble(doble(doble(3))); System.out.println(b); System.out.println(mayor(1,3)); System.out.println(mayor(10,3)); } // Esto es un método porque no devuelve nada static void saludo(String nombre, int n) { for (int i = 0; i < n; i++) { System.out.println("Hola " + nombre + " que tal"); } } // SObre carga (overloading) de funciones. Distintos parámetros // Mismo nombre de función // Java llamará a la función que 'encaje' con los parámetros // Si no encaja ninguna, nos da un error // Podemos llamar a funciones entre sobrecargas o no static void saludo(String nombre) { saludo(nombre,1); } static void saludo(int n) { for (int i = 0; i < n; i++) { System.out.println("Hola que tal estás"); } } // Esto sí es una función, porque devolvemos un valor static int doble(int numero) { return numero * 2; } static int mayor(int a, int b) { if (a > b) { b = a; } return b; }
Ejemplos funciones Java
public static void main(String[] args) { saludo("Ana", 2); saludo("Juan", 3); saludo("Eva", 1); int a = doble(7); System.out.println(a); int b = doble(doble(doble(3))); System.out.println(b); System.out.println(mayor(1,3)); System.out.println(mayor(10,3)); } // Esto es un método porque no devuelve nada static void saludo(String nombre, int n) { for (int i = 0; i < n; i++) { System.out.println("Hola " + nombre + " que tal"); } } // Esto sí es una función, porque devolvemos un valor static int doble(int numero) { return numero * 2; } static int mayor(int a, int b) { if (a > b) { b = a; } return b; }
Ejemplos for y while
Cödigo para los ejemplos típicos de la tabla de multiplicar y la progresión geométrica:
Scanner in = new Scanner(System.in); System.out.println("Introduce un número: "); int a = in.nextInt(); for(int i=1;i<=10;i++) { System.out.println(i+" x "+a+" = "+(i*a)); } System.out.println("Sucesión geométrica. \n Inicial: "); int inicial = in.nextInt(); System.out.println("Razón geométrica: "); int razon = in.nextInt(); System.out.println("Valor límite: "); int limite = in.nextInt(); while(inicial<limite) { System.out.println(inicial); inicial*=razon; }
Bucles en Java
// Bucles: while \ for // while en dos sabores: while() o do{}while() int a = 10; while (a < 10) { a++; System.out.println(a); } a = 10; do { System.out.println(a); a++; } while (a <= 10); // Pedir un número al usuario hasta que ponga un 0 Scanner in = new Scanner(System.in); do { System.out.println("Introduce un número (0 para salir)"); a = in.nextInt(); System.out.println(a * 2); } while (a != 0); a = 1; while (a != 0) { System.out.println("Introduce un número (0 para salir)"); a = in.nextInt(); System.out.println(a * 2); } // For canónico. Os recomiendo tatuarselo en el antebrazo. for (int i = 0; i < 10; i++) { System.out.println(i); } for (int i = 0; i%7!=0; i++) { System.out.println(i); } for (int i = 0; i < 10; i += 2) { System.out.println(i); } int var = 0; for (; var < 10; var += 2) { System.out.println(var); } var = 0; for (; var < 10; ) { System.out.println(var); var += 2; } var = 0; for (; ; ) { System.out.println(var); var += 2; if (var>10) { break; } } // Nada for (int i = 0; i%7!=0; i++) { System.out.println(i); } // Del 1 al 6 // Nada // Solo 1 for (int i = 1; i%7!=0; i++) { System.out.println(i); } // 0 1 2 3 5 6 for (int i = 0; i < 10; i++) { if (i == 4) { // Nos salta el código siguiente hasta el final // Pero sigue con el bucle continue; } if (i == 7) { // Nos sale del bucle break; } System.out.println(i); }
Mini ejercicio
Crear un código que nos pida el nombre y la edad. Si es mayor o igual de 18 poner “Bienvenido “+nombre+” Puedes entrar”. En caso contrario poner: “Lo sentimos, “+nombre+” no puedes entrar.
public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.println("Introduce tu nombre:"); String n = in.next(); System.out.println("Introduce tu edad:"); int a = in.nextInt(); if (a>=18) { System.out.println("Bienvenido/a "+n+". Puedes entrar"); } else { System.out.println("Lo sentimos, "+n+" no puedes entrar"); } in.close(); }
Pedir valores por la consola
package com.trifulcas.saludo; import java.util.Scanner; public class saludo { public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.println("Introduce tu nombre:"); String n = in.next(); System.out.println("Tu nombre " + n); int a = in.nextInt(); System.out.println("Introduce un número:"); in.close(); } }