diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..c691fde --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +/.idea/misc.xml +/.idea/modules.xml +/.idea/vcs.xml +/.idea/workspace.xml + diff --git a/.idea/hello-java.iml b/.idea/hello-java.iml new file mode 100644 index 0000000..0ea14da --- /dev/null +++ b/.idea/hello-java.iml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..d83b546 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..8de22fe --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..c8397c9 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/basic/c00_helloworld/HelloWorld.java b/basic/c00_helloworld/HelloWorld.java index 40df5c4..d9f65d8 100644 --- a/basic/c00_helloworld/HelloWorld.java +++ b/basic/c00_helloworld/HelloWorld.java @@ -1,4 +1,4 @@ -package basic.c00_helloworld; +package c00_helloworld; /* Clase 1 - Introducción y Hola Mundo (02/04/2025) @@ -7,7 +7,6 @@ Clase 2 - Comentarios, Variables, Constantes, Tipos de datos y Operadores (09/04/2025) Vídeo: https://www.twitch.tv/videos/2428998601 */ - // Hola Mundo public class HelloWorld { diff --git a/basic/c00_helloworld/HelloWorldExercises.java b/basic/c00_helloworld/HelloWorldExercises.java index f8b57d8..20b54fb 100644 --- a/basic/c00_helloworld/HelloWorldExercises.java +++ b/basic/c00_helloworld/HelloWorldExercises.java @@ -1,4 +1,4 @@ -package basic.c00_helloworld; +package c00_helloworld; /* Clase 2 - Comentarios, Variables, Constantes, Tipos de datos y Operadores (09/04/2025) @@ -10,24 +10,40 @@ public class HelloWorldExercises { public static void main(String[] args) { // 1. Imprime un mensaje que diga tu nombre en lugar de "¡Hola Mundo!". + System.out.println("Santiago"); // 2. Imprime dos líneas: "Hola" y luego "Mundo" con un solo println. + System.out.println("Hola\nMundo"); // 3. Añade un comentario sobre lo que hace cada línea del programa. + // Este programa imprime un saludo en la consola. // 4. Crea un comentario en varias líneas. + /*Este es un comentario de varias líneas + que explica el propósito del programa. + */ // 5. Imprime tu edad, tu color favorito y tu ciudad. + System.out.println("Edad: 25"); + System.out.println("Color favorito: Negro"); + System.out.println("Ciudad: Córdoba"); // 6. Explora los diferentes System.XXX.println(); más allá de "out". + System.err.println("Este es un mensaje de error."); // 7. Utiliza varios println para imprimir una frase. + System.out.println("Estoy practicando Java"); + System.out.println("y aprendiendo a programar."); + System.out.println("Esto es muy divertido!"); // 8. Imprime un diseño ASCII (por ejemplo, una cara feliz usando símbolos). + System.out.println(" ^_^ "); - // 9. Intenta ejecutar el programa sin el método main y observa el error. + // 9. Intenta ejecutar el programa sin el méto do principal y observa el error. + // El programa no se ejecutará porque no hay un méto do main definido. Se rompe la ejecución. //10. Intenta cambiar el nombre del archivo a uno diferente del de la clase y compílalo. ¿Qué pasa? + // El nombre del archivo debe coincidir con el nombre de la clase pública. Se ejecuta igualmente } } \ No newline at end of file diff --git a/basic/c01_beginner/BeginnerExercises.java b/basic/c01_beginner/BeginnerExercises.java index d940c5f..14863b2 100644 --- a/basic/c01_beginner/BeginnerExercises.java +++ b/basic/c01_beginner/BeginnerExercises.java @@ -1,5 +1,4 @@ -package basic.c01_beginner; - +package c01_beginner; /* Clase 2 - Comentarios, Variables, Constantes, Tipos de datos y Operadores (09/04/2025) Vídeo: https://www.twitch.tv/videos/2428998601 @@ -10,23 +9,42 @@ public class BeginnerExercises { public static void main(String[] args) { // 1. Declara una variable de tipo String y asígnale tu nombre. + String miNombre = "Santiago"; // 2. Crea una variable de tipo int y asígnale tu edad. + int miEdad = 26; // 3. Crea una variable double con tu altura en metros. + double miAltura = 1.75; // 4. Declara una variable de tipo boolean que indique si te gusta programar. + boolean likeProgramming = true; // 5. Declara una constante con tu email. + final String MY_EMAIL = "santiandresfer@hotmail.com"; + System.out.println(MY_EMAIL); // 6. Crea una variable de tipo char y guárdale tu inicial. + char miInicial = 'S'; // 7. Declara una variable de tipo String con tu localidad, y a continuación cambia su valor y vuelve a imprimirla. + String miLocalidad = "Córdoba"; + System.out.println(miLocalidad); + System.out.println("******************"); + miLocalidad = "Buenos Aires"; + System.out.println(miLocalidad); // 8. Crea una variable int llamada a, otra b, e imprime la suma de ambas. + int a = 5; + int b = 10; + System.out.println(a + b); // 9. Imprime el tipo de dos variables creadas anteriormente. + System.out.println("Tipo de a y b: " + ((Object)a).getClass().getSimpleName()); // 10. Intenta declarar una variable sin inicializarla y luego asígnale un valor antes de imprimirla. + int sinInicializar; + sinInicializar = 20; + System.out.println(sinInicializar); } } diff --git a/basic/c01_beginner/DataTypes.java b/basic/c01_beginner/DataTypes.java index 9bf7b37..8836cbd 100644 --- a/basic/c01_beginner/DataTypes.java +++ b/basic/c01_beginner/DataTypes.java @@ -1,4 +1,4 @@ -package basic.c01_beginner; +package c01_beginner; /* Clase 2 - Comentarios, Variables, Constantes, Tipos de datos y Operadores (09/04/2025) @@ -10,7 +10,6 @@ public class DataTypes { public static void main(String[] args) { // Tipos de datos primitivos - int myInt = 37; System.out.println(myInt); @@ -29,8 +28,7 @@ public static void main(String[] args) { String myString = "Hola, Java"; System.out.println(myString); - // Tipo de dato en tiempo de compilación - + // Ver el tipo de dato en tiempo de compilación System.out.println(myString.getClass().getSimpleName()); } } diff --git a/basic/c01_beginner/VariablesAndConstants.java b/basic/c01_beginner/VariablesAndConstants.java index b537fb2..20638e6 100644 --- a/basic/c01_beginner/VariablesAndConstants.java +++ b/basic/c01_beginner/VariablesAndConstants.java @@ -1,4 +1,6 @@ -package basic.c01_beginner; + +package c01_beginner; + /* Clase 2 - Comentarios, Variables, Constantes, Tipos de datos y Operadores (09/04/2025) @@ -10,7 +12,6 @@ public class VariablesAndConstants { public static void main(String[] args) { // Variables - String name = "Brais"; System.out.println(name); @@ -29,7 +30,6 @@ public static void main(String[] args) { System.out.println(year); // Constantes - final String EMAIL = "mouredev@gmail.com"; // EMAIL = "brais@gmail.com"; Es constante System.out.println(EMAIL); diff --git a/basic/c02_operators/Operators.java b/basic/c02_operators/Operators.java index fbfe844..f6c8d70 100644 --- a/basic/c02_operators/Operators.java +++ b/basic/c02_operators/Operators.java @@ -1,4 +1,4 @@ -package basic.c02_operators; +package c02_operators; /* Clase 2 - Comentarios, Variables, Constantes, Tipos de datos y Operadores (09/04/2025) diff --git a/basic/c02_operators/OperatorsExercises.java b/basic/c02_operators/OperatorsExercises.java index 3732928..ffbcb60 100644 --- a/basic/c02_operators/OperatorsExercises.java +++ b/basic/c02_operators/OperatorsExercises.java @@ -1,4 +1,5 @@ -package basic.c02_operators; +package c02_operators; + /* Clase 2 - Comentarios, Variables, Constantes, Tipos de datos y Operadores (09/04/2025) @@ -10,23 +11,58 @@ public class OperatorsExercises { public static void main(String[] args) { // 1. Crea una variable con el resultado de cada operación aritmética. + int suma = 5 + 3; + int resta = 5 - 3; + int multiplicacion = 5 * 3; + int division = 5 / 3; + int modulo = 5 % 3; // 2. Crea una variable para cada tipo de operación de asignación. + var a = 10; + var b = 2; + + System.out.println(a); + a = b; + System.out.println(a); + a = b * 2; + System.out.println(a); + b+= 1; + System.out.println(b); + b-= 2; + System.out.println(b); // 3. Imprime 3 comparaciones verdaderas con diferentes operadores de comparación. + System.out.println(a != b); + System.out.println(a == 4); + System.out.println(a > b); // 4. Imprime 3 comparaciones falsas con diferentes operadores de comparación. + System.out.println(a == b); + System.out.println(a != 4); + System.out.println(a < b); // 5. Utiliza el operador lógico and. + System.out.println(a > b && b < 5); + System.out.println(a < b && b > 5); + System.out.println(true && false); // 6. Utiliza el operador lógico or. + System.out.println(true || false); + System.out.println(false || false); // 7. Combina ambos operadores lógicos. + System.out.println(true && false || false); + System.out.println(a > b && b < 5 || a == 4); // 8. Añade alguna negación. + System.out.println(!(a > b)); // 9. Imprime 3 ejemplos de uso de operadores unarios. + System.out.println(++a); + System.out.println(--a); + System.out.println(-a); // 10. Combina operadores aritméticos, de comparación y lógicos. + System.out.println((a + b) > 10 && (a - b) < 5); } } diff --git a/basic/c03_strings/Strings.java b/basic/c03_strings/Strings.java index 921faa9..8aa1502 100644 --- a/basic/c03_strings/Strings.java +++ b/basic/c03_strings/Strings.java @@ -1,4 +1,4 @@ -package basic.c03_strings; +package c03_strings; /* Clase 3 - Strings, Condicionales y Arrays (17/04/2025) @@ -56,7 +56,7 @@ public static void main(String[] args) { System.out.println(a == c); System.out.println(a.equals(c)); - // Trim + // Trim - Elimina los espacios en blanco System.out.println(" Hola, me llamo Brais ".trim()); // Replace diff --git a/basic/c03_strings/StringsExercises.java b/basic/c03_strings/StringsExercises.java index 32439a1..a165c70 100644 --- a/basic/c03_strings/StringsExercises.java +++ b/basic/c03_strings/StringsExercises.java @@ -1,5 +1,4 @@ -package basic.c03_strings; - +package c03_strings; /* Clase 3 - Strings, Condicionales y Arrays (17/04/2025) Vídeo: https://www.twitch.tv/videos/2436086584 @@ -10,23 +9,44 @@ public class StringsExercises { public static void main(String[] args) { // 1. Concatena dos cadenas de texto. + String firstName = "Santi"; + String lastName = "Ferreira"; + System.out.println(firstName + " " + lastName); // 2. Muestra la longitud de una cadena de texto. + System.out.println("La longitud de la cadena es: " + firstName.length()); // 3. Muestra el primer y último carácter de un string. + System.out.println("El primer carácter es: " + firstName.charAt(0)); + System.out.println("El último carácter es: " + firstName.charAt(firstName.length() - 1)); // 4. Convierte a mayúsculas y minúsculas un string. + System.out.println("En mayúsculas: " + firstName.toUpperCase()); + System.out.println("En minúsculas: " + firstName.toLowerCase()); // 5. Comprueba si una cadena de texto contiene una palabra concreta. + String sentence = "Hola, soy Santi Ferreira"; + System.out.println("¿La frase contiene la palabra ? " + sentence.contains("Santi")); // 6. Formatea un string con un entero. + String saludo = "Hola"; + int edad = 26; + System.out.println(String.format("%s, tengo %d años", saludo, edad)); // 7. Elimina los espacios en blanco al principio y final de un string. + String stringConEspacios = " Hola, soy Santi Ferreira "; + System.out.println("Cadena sin espacios: " + stringConEspacios.trim()); // 8. Sustituye todos los espacios en blanco de un string por un guión (-). + String stringConGuiones = stringConEspacios.replace(" ", "-"); + System.out.println("Cadena con guiones: " + stringConGuiones); // 9. Comprueba si dos strings son iguales. + String string1 = "Hola"; + String string2 = "hola"; + System.out.println("¿String1 es igual a String2? " + string1.equals(string2)); // 10. Comprueba si dos strings tienen la misma longitud. + System.out.println("¿String1 tiene la misma longitud que String2? " + (string1.length() == string2.length())); } } diff --git a/basic/c04_conditionals/Conditionals.java b/basic/c04_conditionals/Conditionals.java index 93e2b47..d116a1d 100644 --- a/basic/c04_conditionals/Conditionals.java +++ b/basic/c04_conditionals/Conditionals.java @@ -1,4 +1,4 @@ -package basic.c04_conditionals; +package c04_conditionals; /* Clase 3 - Strings, Condicionales y Arrays (17/04/2025) diff --git a/basic/c04_conditionals/ConditionalsExercises.java b/basic/c04_conditionals/ConditionalsExercises.java index 69afd8c..3e6d22f 100644 --- a/basic/c04_conditionals/ConditionalsExercises.java +++ b/basic/c04_conditionals/ConditionalsExercises.java @@ -1,4 +1,4 @@ -package basic.c04_conditionals; +package c04_conditionals; /* Clase 3 - Strings, Condicionales y Arrays (17/04/2025) @@ -10,24 +10,118 @@ public class ConditionalsExercises { public static void main(String[] args) { // 1. Establece la edad de un usuario y muestra si puede votar (mayor o igual a 18). + int edadUsuario = 20; + if (edadUsuario >= 18) { + System.out.println("El usuario puede votar."); + } else { + System.out.println("El usuario no puede votar."); + } // 2. Declara dos números y muestra cuál es mayor, o si son iguales. + int numero1 = 10; + int numero2 = 20; + if (numero1 > numero2) { + System.out.println("El número 1 es mayor que el número 2."); + } else if (numero1 < numero2) { + System.out.println("El número 2 es mayor que el número 1."); + } else { + System.out.println("Los números son iguales."); + } // 3. Dado un número, verifica si es positivo, negativo o cero. + int numero = -5; + if (numero > 0) { + System.out.println("El número es positivo."); + } else if (numero <= 0) { + System.out.println("El número es negativo."); + } else { + System.out.println("El número es cero."); + } // 4. Crea un programa que diga si un número es par o impar. + int numeroParImpar = 7; + if (numeroParImpar % 2 == 0) { + System.out.println("El número es par."); + } else { + System.out.println("El número es impar."); + } // 5. Verifica si un número está en el rango de 1 a 100. + int numeroRango = 50; + if (numeroRango >= 1 && numeroRango <= 100) { + System.out.println("El número está en el rango de 1 a 100."); + } else { + System.out.println("El número no está en el rango de 1 a 100."); + } // 6. Declara una variable con el día de la semana (1-7) y muestra su nombre con switch. + int diaSemana = 3; + switch (diaSemana) { + case 1: + System.out.println("Lunes"); + break; + case 2: + System.out.println("Martes"); + break; + case 3: + System.out.println("Miércoles"); + break; + case 4: + System.out.println("Jueves"); + break; + case 5: + System.out.println("Viernes"); + break; + case 6: + System.out.println("Sábado"); + break; + case 7: + System.out.println("Domingo"); + break; + default: + System.out.println("Número de día inválido."); + } // 7. Simula un sistema de notas: muestra "Sobresaliente", "Aprobado" o "Suspenso" según la nota (0-100). + double nota = 8.5; + if (nota >= 9.0) { + System.out.println("Sobresaliente"); + } else if (nota >= 6.0) { + System.out.println("Aprobado"); + } else { + System.out.println("Suspenso"); + } // 8. Escribe un programa que determine si puedes entrar al cine: debes tener al menos 15 años o ir acompañado. + int edadCine = 14; + boolean acompanado = true; + if (edadCine >= 15 || acompanado) { + System.out.println("Puedes entrar al cine."); + } else { + System.out.println("No puedes entrar al cine."); + } + // 9. Crea un programa que diga si una letra es vocal o consonante. + char letra = 'c'; + if (letra == 'a' || letra == 'e' || letra == 'i' || letra == 'o' || letra == 'u') { + System.out.println("La letra es una vocal."); + } else { + System.out.println("La letra es una consonante."); + } // 10. Usa tres variables a, b, c y muestra cuál es el mayor de las tres. + int a = 5; + int b = 10; + int c = 7; + + if (a >= b && a >= c) { + System.out.println("El mayor es a: " + a); + } else if (b >= a && b >= c) { + System.out.println("El mayor es b: " + b); + } else { + System.out.println("El mayor es c: " + c); + } } } diff --git a/basic/c05_structures/Arrays.java b/basic/c05_structures/Arrays.java index 710cee9..b2cd438 100644 --- a/basic/c05_structures/Arrays.java +++ b/basic/c05_structures/Arrays.java @@ -1,4 +1,4 @@ -package basic.c05_structures; +package c05_structures; /* Clase 3 - Strings, Condicionales y Arrays (17/04/2025) @@ -13,32 +13,44 @@ public static void main(String[] args) { int[] numbers = new int[3]; System.out.println(numbers); + System.out.println("---------------------------"); + String[] names = {"Brais", "Moure", "mouredev"}; System.out.println(names); + System.out.println("---------------------------"); + // Acceso System.out.println(numbers[0]); System.out.println(names[0]); System.out.println((new String[3])[0]); + System.out.println("---------------------------"); + // Modificación numbers[0] = 1; numbers[1] = 10; System.out.println(numbers[0]); System.out.println(numbers[1]); + System.out.println("---------------------------"); + // numbers[3] = 2; Error System.out.println(names[2]); names[2] = "mouredev@gmail.com"; System.out.println(names[2]); + System.out.println("---------------------------"); + System.out.println(names.length); names[2] = null; System.out.println(names[2]); System.out.println(names.length); + System.out.println("---------------------------"); + // numbers[2] = null; Error boolean[] booleans = new boolean[5];