# 1.- Primeros pasos

Vamos a comenzar con JAVA

WARNING

De esos fichero que se llaman librerias, se les llaman librerias JQuery como cada día van inventando más comportamientos cada ves van haciendo actualizaciones o comportamientos nuevos y comportamientos que se han quedado obsoletos pero que un programador en el 2019 utilizo, dentro de estas librerias de JQuery existe la libreria maestra que apartir de ella se puede hacer muchas cosas.

# Inicio

        import java.util.*; //Con el * importamos todo el código
        
        public class Main {
            public static void main(String[ ] args) throws Exception {
                // Your code here!
                
                System.out.println("XXXXXXXX");
            }
        }
    public class Usuario {
        public String usuario = "";   
        public String password = "";

        public Usuario(String usuario, String password){
            this.usuario = usuario;
            this.password = password;
        }
        public Usuario(String usuario){
            this.usuario = usuario;
        }
        
        public String getUsuario(){
            return this.usuario;
        }
        
        public static void main(String[ ] args){
            Usuario A = new Usuario("AAA", "passAA");
            System.out.print(A.getUsuario());
            Usuario U1 = new Usuario("U1", "passU1");
            Usuario B = new Usuario("B", "pasB");
            System.out.print(A.usuario);
            System.out.print(A.password);
            System.out.print(U1.usuario);
            System.out.print(U1.password);
            System.out.print(B.usuario);
        }
    }

# Variables

        public class Variables {
    
            public static void main(String[ ] args){
                
                //Numeros enteros
                byte a = 5;
                short b = 200;
                int c = 100000000;
                long d = 100000000000000L;
                
                //Caracteres
                char e = 'a';
                
                double f = 4.5;
                float g = 4.5f;
                
                String h = "Hola mundo";
                
                boolean i = 5 > 10;
                
                System.out.println("el valor A : " + a);
                System.out.println("el valor B : " + b);
                System.out.println("el valor C : " + c);
                System.out.println("el valor D : " + d);
                System.out.println("el valor E : " + e);
                System.out.println("el valor F : " + f);
                System.out.println("el valor G : " + g);
                System.out.println("el valor H : " + h);
                System.out.println("el valor I : " + i);
            }
        }

# UTILIZANDO SCANNER

            import java.util.Scanner;

            public class Saludador{
                
                public static void main(String[ ] args){
                    
                    Scanner sc = new Scanner(System.in);
                    //sc.udeDelimiter("\n");
                    
                    System.out.println("Escribir un nombre");
                    String nombre = sc.next();
                    
                    System.out.println("!Hola" + nombre + "!");
                }
            }

# OPERACIONES

            import java.util.Scanner;

            public class Operaciones {
                public static void main(String[ ] args){

                    Scanner sc = new Scanner(System.in);

                    System.out.println("Escribir el numero 1");
                    int num1 = sc.nextInt();

                    System.out.println("Escribir el numero 2");
                    int num2 = sc.nextInt();

                    int suma = num1 + num2;
                    System.out.println("La suma es " + suma);

                    int resta = num1 - num2;
                    System.out.println("La resta es " + resta);

                    int multiplicar = num1 * num2;
                    System.out.println("La multiplicación es " + multiplicar);

                    if (num1 == 0 && num2 == 0) {
                        System.out.println("No puede dividir entre 0");
                    } else {
                        double division = (double) num1 / num2;
                        System.out.println("La division es " + division);
                    }

                }
            }

# CONDICIONAL IF ELSE

             public static void main(String[] args){
                Scanner sc = new Scanner(System.in);

                System.out.println("Escribir el primer numero");
                int num1 = sc.nextInt();

                System.out.println("Escribir el segundo numero");
                int num2 = sc.nextInt();

                if (num1 <= num2) {
                    if(num1 == num2){
                        System.out.println("El num1 y el num2 son iguales");
                    }else{
                        System.out.println("El num1 es menor que el num2 ");
                    }
                } else {
                    System.out.println("El nun2 es menor que el num1");
                }

                sc.close();
            
            }

# WHILE

Mostrando número pares que hay entre 1 al 10

            public class While {
                public static void main(String[] args) {
                    int i = 1;
                    while(i <= 100){ 
                        if (i % 2 == 0) {
                            System.out.println(i);
                        }
                        i++;
                    }
                }
            }

# FOR

            public class For {
                public static void main(String[] args){
                    int i = 1;
                    for ( i = 0; i <= 10; ++i) {
                        if (i % 2 == 0) {
                            System.out.println(i);
                        }
                    }
                }
            }

# Ejercicios

Pedír un número por consola y mostrar la tabla de 10

        import java.util.Scanner;

        public class Formultiplicar {
            public static void main(String[] args) {

                Scanner sc = new Scanner(System.in);
                System.out.println("Insertar un número");
                int num = sc.nextInt();

                int i = 0;
                for (i = 0; i <= 10; ++i) {
                    int res = i * num;
                    System.out.println(num + " * " + i + " = " + res);
                }
            }
        }

Pide el año por teclado y calcula si es un año bisiesto

        import java.util.Scanner;

        public class CalcularAnios {
            public static void main(String[] args){
                Scanner sc = new Scanner(System.in);
                System.out.println("Insertar número");
                int anio = sc.nextInt();

                if(anio % 4 == 0 && anio % 100 != 0 || anio % 400 == 0){
                    System.out.println("Es bisiesto");
                }else{
                    System.out.println("No es bisiesto");
                }
                sc.close();
            }
        }

Pide por teclado un número que este entre el 0 al 10

        public class NumeroMayor {
            public static void main(String[] args){

                Scanner sc = new Scanner(System.in);
                int numero = 0;
                do{
                    System.out.println("Escribe un número");
                    numero = sc.nextInt();
                }while(!(numero >= 0 && numero <= 10));
                System.out.println("En número " + numero + "esta entre 0 y 10");

                sc.close();
            }
        }

Invertir un texto

            import java.util.Scanner;

            public class Invertir {
                public static void main(String[] args){

                    Scanner sc = new Scanner(System.in);
                    System.out.println("Escribe un texto");
                    String texto = sc.next();

                    char caracter;
                    for (int i = texto.length() - 1; i >= 0; i--){
                        caracter = texto.charAt(i);
                        System.out.print(caracter);
                    }
                }
            }

Crear una función que genere un número aleatorio entre los 2

        public static void main(String[] args){

        Scanner sc = new Scanner(System.in);
        System.out.println("Ingresa un número");
        int NroUno = sc.nextInt();

        Scanner scc = new Scanner(System.in);
        System.out.println("Ingresa otro numero");
        int NroDos = scc.nextInt();

        for(int i = 0; i < 10; i++){
            System.out.println(generarNumeroAleatorio(NroUno, NroDos));
        }
        sc.close();    
        scc.close();    
        }

        public static int generarNumeroAleatorio(int minimo, int maximo){
            return (int) (Math.random() * (maximo - minimo + 1) + (minimo));
        }

Pedir cantidad número y indicar cuales son pares e impares

        public static void main(String[] args){
            String pares = "";
            String impares = "";
            int li, num;

            System.out.println("Ingrese la cantidad de números a evaluar: ");
            Scanner sc = new Scanner(System.in);
            li = sc.nextInt();       
        
            for (int i = 1; i <= li; i++) {
                System.out.println("Ingrese su número # " + i);
                num = sc.nextInt();
                if (num % 2 == 0) {
                    pares += num + " ";
                } else {
                    impares += num + " ";
                }
            }
            sc.close();
            System.out.println("Los números pares son: " + pares);
            System.out.println("\nLos números inpares pares son: " + impares);
        }

Crear función que al pasar 2 número muestre los pares

            public static void main(String[] args){
                Scanner sc = new Scanner(System.in);
                System.out.println("Ingresa un número");
                int NroUno = sc.nextInt();
            
                Scanner scc = new Scanner(System.in);
                System.out.println("Ingresa otro numero");
                int NroDos = scc.nextInt();

                paresEntre(NroUno,NroDos);
            }
            
            public static void paresEntre(int inicio, int fin){
                if(inicio > fin){
                    int aux = inicio;
                    inicio = fin;
                    fin = aux;
                }
                for(int i = 0; i <= fin; i++){
                    if(i%2== 0){
                        System.out.println(i);
                    }
                }
            }

Crear una funcion que valide un numero entre dos numeros se necesitas dos parametros númericos

        public class ValidarNumero {
    
            public static void main(String[] args) {
                //Acá se coloca a partir de que número debe de estar el número ingresado del usuario
                System.out.println(validaNumero(12,10));
            }

            public static int validaNumero(int minimo, int maximo) {

                Scanner sc = new Scanner(System.in);

                //Decimos su minimo es mayor a maximo
                if (minimo > maximo) { 
                    // guardamos primero en una variable nueva el minimo para no perder el dato ya que se va a cambiar a maximo
                    int aux = minimo;  
                    // ahora estamos diciendo que el numero ingresado en maximo se guarde en la variable minimo teniendo en cuenta que antes ya guardamos en una nueva variable el dato original de minimo
                    minimo = maximo;  
                    // Ahora invertimos y hacemos lo mismo con el valor minimo y lo guardamos en maximo
                    maximo = aux;      
                }
                
                // creamos una nueva variable donde se guardara el valor ingresado por el cliente
                int numero;  
                do {
                    System.out.println("Escribe un numero");
                    numero = sc.nextInt();

                    // Decimos si numero ingresado es >= a minimo y numero <= maximo es diferente (Que no esta dentro de la cantida indicada)
                    // Muesta un mensaje indicando a partir de que número va a aceptar la respuesta
                    if (!(numero >= minimo && numero <= maximo)) { 
                        //
                        System.out.println("Debes escribir un numero entre " + minimo + " y " + maximo);
                    }

                } while (!(numero >= minimo && numero <= maximo));
                return numero;
            }
        }

Calcular si la palabra ingresada es palindromo

            public static void main(String[] args){
                Scanner text = new Scanner(System.in);
                System.out.println("Escribe una palabra");
                String palabra = text.next();
                
                String palabra2 = palabra.toLowerCase();
                
                String palindromo = "";

                char [] invertir = palabra2.toCharArray();

                for(int i = invertir.length-1 ; i>=0; i--){
                    palindromo += invertir[i];
                    System.out.println(palindromo);
                }
                System.out.println(palabra2.equals(palindromo) 
                ? palabra + " es un palíndromo»" 
                : palabra + " no es un palíndromo»");
            }

Crear una función que dado dos parametros siendo primero un string y el segundo un boolean, cuente las letras minusculas a mayusculas, segun el valor del segundo parametro.


        //VS 1
        public static void main(String[] args)
        {   
            String palabra = JOptionPane.showInputDialog("digita un texto");
            char caracter;
            int mayusculas=0,minusculas=0;

            for(int i=0;i<palabra.length();i++){
                caracter = palabra.charAt(i);
                int posicion = (int) caracter;
                if(posicion >=65 && posicion <=90){
                    mayusculas++;
                }
                else if(posicion >=97 && posicion <=122){
                    minusculas++;
                }
            }
            System.out.println("Minusculas : " + minusculas);
            System.out.println("Mayusculas : " + mayusculas);
        }
        //VS 2
       public static void main(String[] args) {
            String palabra = JOptionPane.showInputDialog("digita un texto");
            String boton[] = {"Mayusculas", "Minusculas"};
            int ventana = JOptionPane.showOptionDialog(null, "Pulsa boton", "",
            JOptionPane.YES_NO_CANCEL_OPTION,
            JOptionPane.QUESTION_MESSAGE, null,
            boton, boton[0]);
            if(ventana == 0){
                JOptionPane.showMessageDialog(null, (cuentaLetras(palabra, true)));
            }else if(ventana == 1){
                JOptionPane.showMessageDialog(null, (cuentaLetras(palabra, false)));
            }
        }

        public static int cuentaLetras(String frase, boolean mayus) {
            int min, max, contador = 0;
            if (mayus) {
                min = 65;
                max = 90;
            } else {
                min = 97;
                max = 122;
            }
            char caracter;
            for (int i = 0; i < frase.length(); i++) {
                caracter = frase.charAt(i);
                if(caracter >= min && caracter <= max){
                    contador++;
                }
            }
            return contador;
        }

# Llamar a una función

        package pkg21_suma_1_n;
        public class Suma1N {
            /*
                Crear una función que me devuelva la suma del 1 al numero pasado 
                por parámetro (este incluido).
            */
            public static void main(String[] args) {
                int n = 10;
                // 1º forma de llamada
                int res = suma1N(n);
                System.out.println(res);
                // 2º forma de llamada
                System.out.println(suma1N(n));
            }

            public static int suma1N(int n) {
                int suma = 0;
                for (int i = 1; i <= n; i++) {
                    suma += i;
                }
                return suma;
            }
        }

# Array

Crear un array de 3 posiciones, rellenalo pidiendo los números al usuario y recorrelo para mostrarlos.

        public static void main(String[] args){
            Scanner sc = new Scanner(System.in);
            int [] numeros = new int[3];
            int numero;

            for(int i = 0; i < numeros.length; i++){
                System.out.println("Insertar un número en la posicion " + i);
                numero = sc.nextInt();
                numeros[i] = numero;
            }

            System.out.println("Estos son los números ingresados");

            for(int i=0;i<numeros.length ; i++){
                System.out.println(numeros[i]);
            }
        }

Crear un array de 10 posiciones. Con numeros aleatorios de 5 a 10 y rellenalo en un array y generar numeros aleatorios Muestralo al final crea una funcion para rellenarlo y otra para mostrar

        //Versión 1
        public static void main(String[] args){
            Scanner sc = new Scanner(System.in);
            int [] numeros = new int[10];
            int numero;

            int min = 1;
            int max = 100;

            for(int i = 0; i < numeros.length; i++){
                System.out.println("Insertar un nuevo número en la posicion " + i);
                numero = sc.nextInt();
                numeros[i] = numero;
                numeros[i] = (int) (Math.random() * (max - min + 1) + (min));
            }
            for(int i=0;i<numeros.length ; i++){
                System.out.println(numeros[i]);
            }
        }
        //Versión 2
        public static void main(String[] args){
       
            Scanner sc = new Scanner(System.in);
            System.out.println("cantidad de aviones");
            int elementos = sc.nextInt();
            int [] numeros = new int[elementos];
            
            int min = 1,  max = 100;

            for(int i = 0; i < numeros.length; i++){
                numeros[i] = (int) (Math.random() * (max - min + 1) + (min));
                System.out.println("\n Numero insertado en la posicion " + i  + "\n" + numeros[i]);
            }   
        } 
        

Crear 2 array y saber sin los datos son iguales o falsos

        public static void main(String[] args){
            int [] a = {1,2,3,4,5};
            int [] b = {1,2,3,4,5};

            if(Arrays.equals(a, b)){
                System.out.println("son inguales");
            }else{
                System.out.println("no son inguales");
            }
        }

Crea un array y indica cual es la suma y la media

        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("cantidad de numeros");
            int elementos = sc.nextInt();
            int [] array = new int[elementos];
            
            int suma = 0;

            for(int i = 0; i < array.length; i++){
                System.out.println("Ingresa el numero que va estar en la posicion "+i );
                Scanner scc = new Scanner(System.in);
                array[i] = scc.nextInt();
                suma += array[i];
            }
            System.out.println("la suma es " + suma);
            int media = suma / array.length;
            System.out.println("La media es " + media);
        }

Crear 2 array de numeros y unirlos para mostralos por pantalla

         public static void main(String[] args){
            int[] arr1 = new int[]{1,2,3,4,5};
            int[] arr2 = new int[]{6,7,8,9,0};
            int[] arrBoth = new int[arr1.length+arr2.length];

            for(int i = 0; i < arr1.length; i++){
                arrBoth[i] = arr1[i];
            }

            for(int j = arr1.length;j < arrBoth.length;j++){
                arrBoth[j] = arr2[j-arr1.length];
            }

            // Print result
            for(int k = 0; k < arrBoth.length; k++){
                System.out.print(arrBoth[k]);
            }

            System.out.println();
        }

Crear una clase avion con los siguientes atributos: -Modelo -Numero de asientos -VelocidadMaxima Dos constructores: -A constructor vacio -Constructor completo Metodos o propiedades: -Getter y setter