├── .gitignore ├── .idea ├── .gitignore ├── CursoJava.iml ├── modules.xml └── vcs.xml ├── .project ├── Abstraccion ├── .classpath ├── .gitignore ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs └── src │ └── com │ └── cursojava │ └── main │ ├── Auto.java │ ├── Dias.java │ ├── Direcciones.java │ ├── Humano.java │ ├── Main.java │ ├── Matematica.java │ └── Sexo.java ├── Ajedrez ├── .classpath ├── .gitignore ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs └── src │ ├── Ficha.java │ ├── Main.java │ └── Peon.java ├── AtributesAndMethods ├── .classpath ├── .gitignore ├── .project └── src │ └── com │ └── misiontic │ └── main │ ├── Coche.java │ ├── Main.java │ ├── Persona.java │ └── Piloto.java ├── Collections ├── .classpath ├── .gitignore ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs └── src │ └── com │ └── collections │ └── main │ ├── Auto.java │ └── Main.java ├── Conditionals ├── .classpath ├── .gitignore ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs └── src │ └── com │ └── cursojava │ └── main │ └── Main.java ├── Contructors ├── .classpath ├── .gitignore ├── .project └── src │ └── com │ └── misiontic │ └── main │ ├── Main.java │ └── NutritionFacts.java ├── Ejemplos ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── bin │ ├── CalculadorPerimetro.class │ ├── Circulo.class │ ├── Cuadrado.class │ ├── FiguraGeometrica.class │ ├── GuardaDatosMicrosoft.class │ ├── GuardaDatosMysql.class │ ├── Hija_Matematica.class │ ├── Main.class │ ├── Matematica.class │ ├── Parcial1.class │ ├── Rectangulo.class │ └── TrianguloRectangulo.class └── src │ ├── CalculadorPerimetro.java │ ├── Circulo.java │ ├── Cuadrado.java │ ├── FiguraGeometrica.java │ ├── GuardaDatosMicrosoft.java │ ├── GuardaDatosMysql.java │ ├── Hija_Matematica.java │ ├── Main.java │ ├── Matematica.java │ ├── Parcial1.java │ ├── Rectangulo.java │ └── Triangulo.java ├── Fibonacci ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── bin │ └── main │ │ └── Main.class └── src │ └── main │ └── Main.java ├── Function ├── .classpath ├── .gitignore ├── .project └── src │ ├── com │ └── misiontic │ │ └── main │ │ ├── Clase2.java │ │ └── Main.java │ └── otropaquete │ └── Diferent.java ├── HelloWorld ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── bin │ └── com │ │ └── misiontic │ │ └── main │ │ └── Main.class └── src │ └── com │ └── misiontic │ └── main │ └── Main.java ├── Herencia ├── .classpath ├── .gitignore ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs └── src │ ├── geometria │ ├── Circulo.java │ ├── Cuadrado.java │ ├── Figura.java │ ├── Rectangulo.java │ └── Triangulo.java │ ├── main │ └── Main.java │ └── model │ ├── Bus.java │ ├── BusTradicional.java │ ├── Taxi.java │ ├── Transmilenio.java │ ├── Vehiculo.java │ ├── VehiculoParticular.java │ └── VehiculoPublico.java ├── InputOutput ├── .classpath ├── .gitignore ├── .project └── src │ └── com │ └── misiontic │ └── main │ └── Main.java ├── Intro Curso Java.docx ├── Loops ├── .classpath ├── .gitignore ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs └── src │ └── com │ └── loops │ └── main │ └── Main.java ├── MeLi ├── .classpath ├── .gitignore ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs └── src │ └── meli │ ├── Main.java │ └── Utils.java ├── POO-tamagotchi ├── .classpath ├── .gitignore ├── .project └── src │ └── com │ └── misiontic │ └── main │ ├── Animal.java │ ├── Food.java │ ├── Main.java │ ├── Medicine.java │ └── Veterinary.java ├── Poker ├── .classpath ├── .gitignore ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs └── src │ ├── Carta.java │ ├── Controller.java │ ├── Jugador.java │ └── Palo.java ├── README.md ├── Recursiva ├── .classpath ├── .gitignore ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs └── src │ ├── Main.java │ └── Recursiva.java ├── RemoteSystemsTempFiles └── .project ├── Switch ├── .classpath ├── .gitignore ├── .project └── src │ └── com │ └── misiontic │ └── main │ └── Main.java ├── Tienda ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── bin │ ├── Articulo.class │ ├── Carro.class │ ├── Main.class │ └── Moto.class └── src │ ├── Articulo.java │ ├── Carro.java │ ├── Main.java │ └── Moto.java ├── Variables ├── .classpath ├── .gitignore ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs └── src │ └── main │ ├── diurno.java │ └── nocturno.java ├── VoltearArray ├── .classpath ├── .gitignore ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs └── src │ └── com │ └── volteararray │ └── main │ └── Main.java └── solucionLeonardo ├── .classpath ├── .gitignore ├── .project ├── .settings └── org.eclipse.jdt.core.prefs └── src └── solucionLeonardo ├── Dron.java ├── DronTest.java ├── Main.java └── Parametros.java /.gitignore: -------------------------------------------------------------------------------- 1 | /.metadata/ 2 | /.recommenders/ 3 | -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /.idea/CursoJava.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | CursoJava 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Abstraccion/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Abstraccion/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /Abstraccion/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Abstraccion 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Abstraccion/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /Abstraccion/src/com/cursojava/main/Auto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Abstraccion/src/com/cursojava/main/Auto.java -------------------------------------------------------------------------------- /Abstraccion/src/com/cursojava/main/Dias.java: -------------------------------------------------------------------------------- 1 | package com.cursojava.main; 2 | 3 | public enum Dias { 4 | LUNES, MARTES, MIERCOLES, JUEVES, VIERNES, SABADO, DOMINGO; 5 | } 6 | -------------------------------------------------------------------------------- /Abstraccion/src/com/cursojava/main/Direcciones.java: -------------------------------------------------------------------------------- 1 | package com.cursojava.main; 2 | 3 | public enum Direcciones { 4 | IZQUIERDA, DERECHA, FRENTE, REVERSA 5 | } 6 | -------------------------------------------------------------------------------- /Abstraccion/src/com/cursojava/main/Humano.java: -------------------------------------------------------------------------------- 1 | package com.cursojava.main; 2 | 3 | public class Humano { 4 | 5 | private String nombre = "Camilo"; 6 | private int edad; 7 | private Sexo sexo = Sexo.MALE; 8 | 9 | 10 | 11 | public String getNombre() { 12 | return nombre; 13 | } 14 | 15 | public void setNombre(String nombre) { 16 | this.nombre = nombre; 17 | } 18 | 19 | public int getEdad() { 20 | return edad; 21 | } 22 | 23 | public void setEdad(int edad) { 24 | this.edad = edad; 25 | } 26 | 27 | public Sexo getSexo() { 28 | return sexo; 29 | } 30 | 31 | public void setSexo(Sexo sexo) { 32 | this.sexo = sexo; 33 | } 34 | 35 | 36 | 37 | public void crecer() { 38 | 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /Abstraccion/src/com/cursojava/main/Main.java: -------------------------------------------------------------------------------- 1 | package com.cursojava.main; 2 | 3 | public class Main { 4 | 5 | static Matematica miObjetoMatematica = new Matematica(); 6 | 7 | /* 8 | int 9999 9 | long 1000000 10 | char 'a' 11 | String "asdnadn" 12 | boolean true false 13 | float 1000000.0 14 | float 999.9999 15 | double 999.99999999 16 | */ 17 | 18 | public static void main(String[] args) { 19 | int a = 3; 20 | System.out.println(miObjetoMatematica.multiplicar(a, 7)); 21 | } 22 | 23 | public int multiplicar(int x, int y){ 24 | return x*y; 25 | 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /Abstraccion/src/com/cursojava/main/Matematica.java: -------------------------------------------------------------------------------- 1 | package com.cursojava.main; 2 | 3 | public class Matematica { 4 | 5 | /** 6 | * SOLO MULTIPLICA NUMEROS ENTEROS 7 | * @param x 8 | * @param y 9 | * @return 10 | */ 11 | public int multiplicar(int x, int y){ 12 | return x*y; 13 | 14 | } 15 | 16 | public void retirarDInero(int cantidadARetirar){ 17 | //calcular si sus fondos son suficientes 18 | //restar la cantidad a retirar de sus fondo 19 | //entregar dinero 20 | 21 | //QUiere saber su saldo final? 22 | //si: return saldoFInal 23 | //no: 24 | 25 | } 26 | 27 | 28 | } 29 | -------------------------------------------------------------------------------- /Abstraccion/src/com/cursojava/main/Sexo.java: -------------------------------------------------------------------------------- 1 | package com.cursojava.main; 2 | 3 | public enum Sexo { 4 | FEMALE, MALE; 5 | } 6 | -------------------------------------------------------------------------------- /Ajedrez/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Ajedrez/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /Ajedrez/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Ajedrez 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Ajedrez/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /Ajedrez/src/Ficha.java: -------------------------------------------------------------------------------- 1 | 2 | public abstract class Ficha { 3 | 4 | private boolean color;//0 blanco; 1 negro 5 | 6 | public Ficha(boolean color) { 7 | super(); 8 | this.color = color; 9 | } 10 | 11 | public boolean isColor() { 12 | return color; 13 | } 14 | 15 | public abstract boolean puedoMover(int filaActual, int columnaActual, int filaDestino, int columnaDestino); 16 | 17 | } 18 | -------------------------------------------------------------------------------- /Ajedrez/src/Main.java: -------------------------------------------------------------------------------- 1 | 2 | public class Main { 3 | 4 | private static Ficha[][] tablero = new Ficha[8][8]; 5 | 6 | public static void main(String[] args) { 7 | 8 | 9 | String comando = leerComando(); 10 | 11 | //TODO transformar el comando a los enteros 12 | int filaActual = 1; 13 | int columnaActual = 0; 14 | 15 | int filaDestino = 7; 16 | int columnaDestino = 0; 17 | 18 | boolean sePuedeMover = tablero[filaActual][columnaActual].puedoMover(filaActual, columnaActual, filaDestino, columnaDestino); 19 | if(sePuedeMover) { 20 | tablero[filaDestino][columnaDestino] = tablero[filaActual][columnaActual]; 21 | tablero[filaActual][columnaActual] = null; 22 | } 23 | 24 | 25 | 26 | 27 | 28 | } 29 | 30 | static String leerComando(){ 31 | //TODO leer lo que el usuario escriba en consola 32 | return "1,2;1,5"; 33 | } 34 | 35 | 36 | } 37 | -------------------------------------------------------------------------------- /Ajedrez/src/Peon.java: -------------------------------------------------------------------------------- 1 | 2 | public class Peon extends Ficha{ 3 | 4 | public Peon(boolean color) { 5 | super(color); 6 | } 7 | 8 | @Override 9 | public boolean puedoMover(int filaActual, int columnaActual, int filaDestino, int columnaDestino) { 10 | if(filaDestino < filaActual+1 && columnaActual == columnaDestino) { 11 | return true; 12 | } 13 | return false; 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /AtributesAndMethods/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /AtributesAndMethods/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /AtributesAndMethods/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | AtributesAndMethods 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /AtributesAndMethods/src/com/misiontic/main/Coche.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | public class Coche { 4 | 5 | private String marca; 6 | private String modelo; 7 | private String color; 8 | private String matricula; 9 | private double precio;//ESTE VALOR ESTA EN EUROS 10 | private double descuento = 2000; 11 | 12 | private Piloto piloto; 13 | 14 | 15 | public Coche(String marca, String modelo, String color, String matricula, double precio, double descuento, Piloto piloto) { 16 | super(); 17 | this.marca = marca; 18 | this.modelo = modelo; 19 | this.color = color; 20 | this.matricula = matricula; 21 | this.precio = precio; 22 | this.descuento = descuento; 23 | this.piloto = piloto; 24 | } 25 | 26 | public Coche(String marca, String modelo, String color, String matricula, double precio, Piloto piloto) { 27 | this(marca,modelo,color,matricula,precio,0,piloto); 28 | 29 | } 30 | 31 | public double getDescuento() { 32 | return descuento; 33 | } 34 | 35 | public String getMarca() { 36 | return marca; 37 | } 38 | 39 | public void setMarca(String marca) { 40 | this.marca = marca; 41 | } 42 | 43 | public String getModelo() { 44 | return modelo; 45 | } 46 | 47 | public void setModelo(String modelo) { 48 | this.modelo = modelo; 49 | } 50 | 51 | public String getColor() { 52 | return color; 53 | } 54 | 55 | public void setColor(String color) { 56 | if(color.equalsIgnoreCase("azul") || color.equalsIgnoreCase("amarillo") || color.equalsIgnoreCase("rojo")) { 57 | this.color = color; 58 | } 59 | else { 60 | System.out.println("ESO NO ES UN COLOR VALIDO"); 61 | } 62 | } 63 | 64 | public String getMatricula() { 65 | return matricula; 66 | } 67 | 68 | public void setMatricula(String matricula) { 69 | this.matricula = matricula; 70 | } 71 | 72 | public double getPrecio() { 73 | return precio; 74 | } 75 | 76 | public void setPrecio(double precio) { 77 | this.precio = precio; 78 | } 79 | 80 | public Piloto getPiloto() { 81 | return piloto; 82 | } 83 | 84 | public void setPiloto(Piloto piloto) { 85 | this.piloto = piloto; 86 | } 87 | 88 | public void arrancar() { 89 | 90 | } 91 | 92 | public void detenerse() { 93 | 94 | } 95 | 96 | public void acelerar() { 97 | 98 | } 99 | 100 | public void frenar(){ 101 | 102 | } 103 | } 104 | -------------------------------------------------------------------------------- /AtributesAndMethods/src/com/misiontic/main/Main.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | public class Main { 4 | 5 | public static void main(String[] args) { 6 | 7 | //EJEMPLO 1 8 | 9 | Piloto piloto = new Piloto("Montoya",35); 10 | 11 | Coche coche = new Coche("Seat","Leon","azul","1234BBB",10000,1000, piloto); 12 | Coche coche2 = new Coche("Renault","Clio","Rojo","ABC123",10000, piloto); 13 | 14 | //coche.setPiloto(piloto); 15 | 16 | System.out.println(coche.getPiloto().getName()); 17 | 18 | /* 19 | Coche coche2 = new Coche(); 20 | coche2.setMarca("Ferrari"); 21 | coche2.setModelo("Enzo"); 22 | coche2.setColor("rojo"); 23 | coche2.setMatricula("5555JJK"); 24 | coche2.setPrecio(55000); 25 | 26 | //double precioRespuesta = digameCualEsElPrecio(coche); 27 | //Piloto pilotoResultado = digameCualEsElPiloto(coche10000); 28 | */ 29 | } 30 | /* 31 | public static double digameCualEsElPrecio(Coche miCosito) { 32 | return miCosito.precio; 33 | } 34 | 35 | public static Piloto digameCualEsElPiloto(Coche coche) { 36 | return coche.piloto; 37 | }*/ 38 | 39 | } 40 | -------------------------------------------------------------------------------- /AtributesAndMethods/src/com/misiontic/main/Persona.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | public class Persona { 4 | 5 | private String name; 6 | private int age; 7 | static int pesonsCounter; 8 | 9 | 10 | public static void incrementarContador() { 11 | pesonsCounter++; 12 | } 13 | 14 | } 15 | -------------------------------------------------------------------------------- /AtributesAndMethods/src/com/misiontic/main/Piloto.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | public class Piloto { 4 | 5 | private String name; 6 | private int age; 7 | 8 | public Piloto(String name, int age) { 9 | this.name = name; 10 | this.age = age; 11 | } 12 | 13 | 14 | public String getName() { 15 | return name; 16 | } 17 | 18 | public void setName(String name) { 19 | this.name = name; 20 | } 21 | 22 | public int getAge() { 23 | return age; 24 | } 25 | 26 | public void setAge(int age) { 27 | this.age = age; 28 | } 29 | 30 | 31 | } 32 | -------------------------------------------------------------------------------- /Collections/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Collections/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /Collections/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Collections 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Collections/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /Collections/src/com/collections/main/Auto.java: -------------------------------------------------------------------------------- 1 | package com.collections.main; 2 | 3 | public class Auto { 4 | 5 | private int modelo; 6 | private int kilometraje; 7 | private String marca; 8 | 9 | public int getModelo() { 10 | return modelo; 11 | } 12 | public void setModelo(int modelo) { 13 | this.modelo = modelo; 14 | } 15 | public int getKilometraje() { 16 | return kilometraje; 17 | } 18 | public void setKilometraje(int kilometraje) { 19 | this.kilometraje = kilometraje; 20 | } 21 | public String getMarca() { 22 | return marca; 23 | } 24 | public void setMarca(String marca) { 25 | this.marca = marca; 26 | } 27 | 28 | 29 | } 30 | -------------------------------------------------------------------------------- /Collections/src/com/collections/main/Main.java: -------------------------------------------------------------------------------- 1 | package com.collections.main; 2 | 3 | import java.util.ArrayList; 4 | import java.util.List; 5 | 6 | public class Main { 7 | 8 | /* 9 | array [] 10 | tuplas () 11 | diccionarios {key:value} 12 | 13 | List -> colecciones datos que pueden estar duplicados 14 | ArrayList -> tienen orden segun el ingreso 15 | 16 | Set -> colecciones sin duplicados 17 | HashSet -> no tiene un orden en particular 18 | LinkedHashSet -> tienen un ordenamieto segun el ingreso 19 | TreeSet -> 20 | Map -> almacenan una clave valor 21 | HashMap 22 | */ 23 | 24 | 25 | static List miLista; 26 | 27 | public static void main(String[] args) { 28 | 29 | miLista = new ArrayList(); 30 | 31 | miLista.add("item 0"); 32 | miLista.add("item 1"); 33 | miLista.add("item 2"); 34 | 35 | for(int i = 0; i< miLista.size(); i++) { 36 | System.out.println(miLista.get(i)); 37 | } 38 | 39 | /* 40 | miLista.add(0, "5to elemento"); 41 | 42 | miLista.add("6to elemento"); 43 | miLista.add(1, "6to elemento"); 44 | /* 45 | */ 46 | 47 | /* 48 | List miListaDeCosasParaVender = new ArrayList<>(); 49 | 50 | Auto elCarroDeMauro = new Auto(); 51 | elCarroDeMauro.setKilometraje(65000); 52 | elCarroDeMauro.setModelo(2018); 53 | elCarroDeMauro.setMarca("chevrolet"); 54 | 55 | Auto elCarroDeNico = new Auto(); 56 | elCarroDeNico.setKilometraje(30000); 57 | elCarroDeNico.setModelo(2015); 58 | elCarroDeNico.setMarca("toyota"); 59 | 60 | Auto elCarroDeCamilo = new Auto(); 61 | elCarroDeCamilo.setKilometraje(200000); 62 | elCarroDeCamilo.setModelo(1980); 63 | elCarroDeCamilo.setMarca("Peageut"); 64 | 65 | //set... cambia el valor de un atributo 66 | //get... obtiene el valor de ese atributo 67 | 68 | miListaDeCosasParaVender.add(elCarroDeMauro); 69 | miListaDeCosasParaVender.add(elCarroDeNico); 70 | miListaDeCosasParaVender.add(0, elCarroDeCamilo); 71 | 72 | 73 | //Mostrar los carros para vender 74 | for(int i = 0; i < miListaDeCosasParaVender.size(); i++) { 75 | 76 | System.out.println(miListaDeCosasParaVender.get(i).getKilometraje()); 77 | System.out.println(miListaDeCosasParaVender.get(i).getModelo()); 78 | System.out.println(miListaDeCosasParaVender.get(i).getMarca()); 79 | } 80 | 81 | System.out.println("For each---------------"); 82 | 83 | for(Auto item : miListaDeCosasParaVender) { 84 | System.out.println(item.getKilometraje()); 85 | System.out.println(item.getModelo()); 86 | System.out.println(item.getMarca()); 87 | } 88 | */ 89 | } 90 | 91 | } 92 | -------------------------------------------------------------------------------- /Conditionals/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Conditionals/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /Conditionals/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Conditionals 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Conditionals/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /Conditionals/src/com/cursojava/main/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Conditionals/src/com/cursojava/main/Main.java -------------------------------------------------------------------------------- /Contructors/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Contructors/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /Contructors/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Contructors 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Contructors/src/com/misiontic/main/Main.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | public class Main { 4 | 5 | public static void main(String[] args) { 6 | 7 | 8 | 9 | NutritionFacts n1 = new NutritionFacts(10, 5); 10 | NutritionFacts n2 = new NutritionFacts(700, 500, 20); 11 | NutritionFacts n3 = new NutritionFacts(10, 0, 0, 0, 300, 24); 12 | 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /Contructors/src/com/misiontic/main/NutritionFacts.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | public class NutritionFacts { 4 | private final int servingSize; // (mL) required 5 | private final int servings; // (per container) required 6 | private final int calories; // (per serving) optional 7 | private final int fat; // (g/serving) optional 8 | private final int sodium; // (mg/serving) optional 9 | private final int carbohydrate; // (g/serving) optional 10 | 11 | public NutritionFacts(int servingSize, int servings) { 12 | this(servingSize, servings, 0, 0, 0, 0); 13 | } 14 | 15 | public NutritionFacts(int servingSize, int servings, int carbohydrate) { 16 | this(servingSize, servings, 0, 0, 0, carbohydrate); 17 | } 18 | 19 | public NutritionFacts(int servingSize, int servings, int calories, int fat, int sodium, int carbohydrate) { 20 | this.servingSize = servingSize; 21 | this.servings = servings; 22 | this.calories = calories; 23 | this.fat = fat; 24 | this.sodium = sodium; 25 | this.carbohydrate = carbohydrate; 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /Ejemplos/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Ejemplos/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Ejemplos 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Ejemplos/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /Ejemplos/bin/CalculadorPerimetro.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Ejemplos/bin/CalculadorPerimetro.class -------------------------------------------------------------------------------- /Ejemplos/bin/Circulo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Ejemplos/bin/Circulo.class -------------------------------------------------------------------------------- /Ejemplos/bin/Cuadrado.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Ejemplos/bin/Cuadrado.class -------------------------------------------------------------------------------- /Ejemplos/bin/FiguraGeometrica.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Ejemplos/bin/FiguraGeometrica.class -------------------------------------------------------------------------------- /Ejemplos/bin/GuardaDatosMicrosoft.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Ejemplos/bin/GuardaDatosMicrosoft.class -------------------------------------------------------------------------------- /Ejemplos/bin/GuardaDatosMysql.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Ejemplos/bin/GuardaDatosMysql.class -------------------------------------------------------------------------------- /Ejemplos/bin/Hija_Matematica.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Ejemplos/bin/Hija_Matematica.class -------------------------------------------------------------------------------- /Ejemplos/bin/Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Ejemplos/bin/Main.class -------------------------------------------------------------------------------- /Ejemplos/bin/Matematica.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Ejemplos/bin/Matematica.class -------------------------------------------------------------------------------- /Ejemplos/bin/Parcial1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Ejemplos/bin/Parcial1.class -------------------------------------------------------------------------------- /Ejemplos/bin/Rectangulo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Ejemplos/bin/Rectangulo.class -------------------------------------------------------------------------------- /Ejemplos/bin/TrianguloRectangulo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Ejemplos/bin/TrianguloRectangulo.class -------------------------------------------------------------------------------- /Ejemplos/src/CalculadorPerimetro.java: -------------------------------------------------------------------------------- 1 | 2 | public interface CalculadorPerimetro { 3 | 4 | public double otroMetodo(); 5 | } 6 | -------------------------------------------------------------------------------- /Ejemplos/src/Circulo.java: -------------------------------------------------------------------------------- 1 | 2 | public class Circulo implements FiguraGeometrica{ 3 | 4 | int a = 2; 5 | 6 | @Override 7 | public double calcularArea() { 8 | int b = 2; 9 | // TODO Auto-generated method stub 10 | return 0; 11 | } 12 | 13 | public void elMetodoDelCirculo(){ 14 | 15 | } 16 | 17 | @Override 18 | public void pintar() { 19 | // TODO Auto-generated method stub 20 | 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Ejemplos/src/Cuadrado.java: -------------------------------------------------------------------------------- 1 | 2 | public class Cuadrado implements CalculadorArea, CalculadorPerimetro{ 3 | 4 | @Override 5 | public double calcularPerimetro() { 6 | // TODO Auto-generated method stub 7 | return 0; 8 | } 9 | 10 | @Override 11 | public void calcularArea() { 12 | // TODO Auto-generated method stub 13 | 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /Ejemplos/src/FiguraGeometrica.java: -------------------------------------------------------------------------------- 1 | 2 | public interface FiguraGeometrica { 3 | 4 | 5 | public double calcularArea(); 6 | public void pintar(); 7 | 8 | } 9 | -------------------------------------------------------------------------------- /Ejemplos/src/GuardaDatosMicrosoft.java: -------------------------------------------------------------------------------- 1 | 2 | public class GuardaDatosMicrosoft implements guardarDatos{ 3 | 4 | public boolean guardarDatos() { 5 | conexion a mysql 6 | } 7 | 8 | } 9 | -------------------------------------------------------------------------------- /Ejemplos/src/GuardaDatosMysql.java: -------------------------------------------------------------------------------- 1 | 2 | public class GuardaDatosMysql implements guardarDatos{ 3 | 4 | public boolean guardarDatos() { 5 | conexion a mysql 6 | } 7 | 8 | } 9 | -------------------------------------------------------------------------------- /Ejemplos/src/Hija_Matematica.java: -------------------------------------------------------------------------------- 1 | 2 | public class Hija_Matematica extends Matematica { 3 | 4 | } 5 | -------------------------------------------------------------------------------- /Ejemplos/src/Main.java: -------------------------------------------------------------------------------- 1 | 2 | public class Main { 3 | 4 | Parcial1 parcial1 = new Parcial1(); 5 | 6 | public static void main(String[] args) { 7 | 8 | 9 | } 10 | 11 | public static void miOtraFuncion() { 12 | 13 | } 14 | 15 | } -------------------------------------------------------------------------------- /Ejemplos/src/Matematica.java: -------------------------------------------------------------------------------- 1 | 2 | public abstract class Matematica { 3 | 4 | 5 | 6 | private final double GRAVEDAD_TIERRA = 9.8; 7 | 8 | public abstract double division(); 9 | 10 | public final int multiplicar(int x, int y) { 11 | //return x*y; 12 | int resultado = 0; 13 | for(int i=0; i 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Fibonacci/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Fibonacci 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Fibonacci/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=16 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=16 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled 11 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 12 | org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning 13 | org.eclipse.jdt.core.compiler.release=enabled 14 | org.eclipse.jdt.core.compiler.source=16 15 | -------------------------------------------------------------------------------- /Fibonacci/bin/main/Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Fibonacci/bin/main/Main.class -------------------------------------------------------------------------------- /Fibonacci/src/main/Main.java: -------------------------------------------------------------------------------- 1 | package main; 2 | 3 | import java.util.*; 4 | import java.io.*; 5 | 6 | public class Main { 7 | 8 | public static String FibonacciChecker(int num) { 9 | 10 | int i1 = 1; 11 | int i0 = 0; 12 | int i = 0; 13 | while(i 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Function/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /Function/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Function 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Function/src/com/misiontic/main/Clase2.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | public class Clase2 { 4 | 5 | 6 | public static int calcularExponente(int miNumero) { 7 | return miNumero * miNumero; 8 | } 9 | 10 | 11 | 12 | } 13 | -------------------------------------------------------------------------------- /Function/src/com/misiontic/main/Main.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class Main { 6 | 7 | // (tipos de parametro nombre parametro) 8 | 9 | public static void main(String[] args) { 10 | 11 | 12 | // TODO Auto-generated method stub 13 | Scanner scanner = new Scanner(System.in); 14 | System.out.println("Nombre: "); 15 | String nombre = scanner.nextLine(); 16 | System.out.println("Edad: "); 17 | int edad = scanner.nextInt(); 18 | System.out.println("Semanas cotizadas: "); 19 | int semanas = scanner.nextInt(); 20 | System.out.println("Sexo (M o F): "); 21 | String sexo = scanner.nextLine(); 22 | calcularpension(edad, semanas, sexo); 23 | } 24 | 25 | 26 | private static void calcularpension(int edad, int semanas, String sexo) { 27 | System.out.println("calculando..."); 28 | } 29 | 30 | 31 | public static int multiplicar(int x, int y) { 32 | return sumar(sumar(x,x), sumar(x,x)) + x; 33 | } 34 | 35 | public static int sumar(int a, int b) { 36 | int resultado = a + b; 37 | return resultado; 38 | } 39 | 40 | public static int exponente() { 41 | /* 42 | int resultado = 1; 43 | for (int i = 0; i 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /HelloWorld/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | HelloWorld 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /HelloWorld/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=16 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=16 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled 11 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 12 | org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning 13 | org.eclipse.jdt.core.compiler.release=enabled 14 | org.eclipse.jdt.core.compiler.source=16 15 | -------------------------------------------------------------------------------- /HelloWorld/bin/com/misiontic/main/Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/HelloWorld/bin/com/misiontic/main/Main.class -------------------------------------------------------------------------------- /HelloWorld/src/com/misiontic/main/Main.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | public class Main { 4 | 5 | 6 | 7 | public static void main(String[] args) { 8 | 9 | String mensaje = "hola"; 10 | 11 | System.out.println(mensaje); 12 | 13 | } 14 | 15 | 16 | 17 | 18 | 19 | } 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /Herencia/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Herencia/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /Herencia/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Herencia 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Herencia/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /Herencia/src/geometria/Circulo.java: -------------------------------------------------------------------------------- 1 | package geometria; 2 | 3 | public class Circulo extends Figura { 4 | private int radio = 3; 5 | 6 | public Circulo() { 7 | super("Circulo"); 8 | } 9 | 10 | @Override 11 | public void area() { 12 | super.area(); 13 | System.out.println(3.141592 * radio * radio); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Herencia/src/geometria/Cuadrado.java: -------------------------------------------------------------------------------- 1 | package geometria; 2 | 3 | public class Cuadrado extends Rectangulo { 4 | 5 | 6 | public Cuadrado() { 7 | super("Cuadrado"); 8 | } 9 | 10 | @Override 11 | public void area() { 12 | super.area(); 13 | System.out.println("Area cuadrado"); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Herencia/src/geometria/Figura.java: -------------------------------------------------------------------------------- 1 | package geometria; 2 | 3 | public class Figura { 4 | 5 | private String nombre; 6 | 7 | public Figura(String n) { 8 | nombre = n; 9 | } 10 | 11 | public void area() { 12 | System.out.println("Voy a calcular el area de la Figura: " + nombre); 13 | } 14 | 15 | public void perimetro() { 16 | System.out.println("Voy a calcular el perimetro de la FIgura: "+ nombre); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Herencia/src/geometria/Rectangulo.java: -------------------------------------------------------------------------------- 1 | package geometria; 2 | 3 | public class Rectangulo extends Figura{ 4 | 5 | public Rectangulo(String n) { 6 | super(n); 7 | } 8 | 9 | public void tipo() { 10 | System.out.println("hola soy un tipo de rectangulo"); 11 | } 12 | 13 | 14 | } 15 | -------------------------------------------------------------------------------- /Herencia/src/geometria/Triangulo.java: -------------------------------------------------------------------------------- 1 | package geometria; 2 | 3 | public class Triangulo extends Figura{ 4 | 5 | public Triangulo(String n) { 6 | super(n); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /Herencia/src/main/Main.java: -------------------------------------------------------------------------------- 1 | package main; 2 | 3 | import geometria.*; 4 | import model.Taxi; 5 | import model.Transmilenio; 6 | 7 | public class Main { 8 | 9 | public static void main(String[] args) { 10 | /* 11 | Circulo c = new Circulo(); 12 | c.area(); 13 | 14 | Triangulo t = new Triangulo(); 15 | t.area(); 16 | 17 | Rectangulo r = new Rectangulo(); 18 | r.area(); 19 | */ 20 | Cuadrado cua = new Cuadrado(); 21 | cua.area(); 22 | cua.tipo(); 23 | 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /Herencia/src/model/Bus.java: -------------------------------------------------------------------------------- 1 | package model; 2 | 3 | public class Bus extends VehiculoPublico{ 4 | 5 | private int tarifa; 6 | 7 | @Override 8 | public void cobrar() { 9 | // cobrar la tarifa unica al inicar 10 | 11 | } 12 | 13 | public Bus(int tarifa) { 14 | super(); 15 | this.tarifa = tarifa; 16 | setPuestos(20); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /Herencia/src/model/BusTradicional.java: -------------------------------------------------------------------------------- 1 | package model; 2 | 3 | public class BusTradicional extends Bus{ 4 | 5 | public BusTradicional() { 6 | super(2000); 7 | } 8 | 9 | 10 | } 11 | -------------------------------------------------------------------------------- /Herencia/src/model/Taxi.java: -------------------------------------------------------------------------------- 1 | package model; 2 | 3 | public class Taxi extends VehiculoPublico{ 4 | 5 | public Taxi() { 6 | super(); 7 | setPuestos(4); 8 | } 9 | 10 | @Override 11 | public void cobrar() { 12 | //cobrar por distancia 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /Herencia/src/model/Transmilenio.java: -------------------------------------------------------------------------------- 1 | package model; 2 | 3 | public class Transmilenio extends Bus{ 4 | 5 | public Transmilenio(String placa) { 6 | super(2500); 7 | setPuestos(50); 8 | setPlaca(placa); 9 | } 10 | 11 | @Override 12 | public boolean estaLleno() { 13 | return getOcupantes() == getPuestos() * 3; 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /Herencia/src/model/Vehiculo.java: -------------------------------------------------------------------------------- 1 | package model; 2 | 3 | public class Vehiculo { 4 | 5 | //Atributos 6 | private String placa; 7 | private int potenciaMotor; 8 | private int puestos; 9 | private int ocupantes; 10 | 11 | public int getOcupantes() { 12 | return ocupantes; 13 | } 14 | //Getters-Setters (metodos) 15 | public int getPuestos() { 16 | return puestos; 17 | } 18 | public void setPuestos(int puestos) { 19 | this.puestos = puestos; 20 | } 21 | public String getPlaca() { 22 | return placa; 23 | } 24 | public void setPlaca(String placa) { 25 | this.placa = placa; 26 | } 27 | public int getPotenciaMotor() { 28 | return potenciaMotor; 29 | } 30 | public void setPotenciaMotor(int potenciaMotor) { 31 | this.potenciaMotor = potenciaMotor; 32 | } 33 | 34 | public boolean estaLleno() { 35 | return puestos == ocupantes; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /Herencia/src/model/VehiculoParticular.java: -------------------------------------------------------------------------------- 1 | package model; 2 | 3 | public class VehiculoParticular extends Vehiculo { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /Herencia/src/model/VehiculoPublico.java: -------------------------------------------------------------------------------- 1 | package model; 2 | 3 | public abstract class VehiculoPublico extends Vehiculo{ 4 | 5 | public abstract void cobrar(); 6 | 7 | } 8 | -------------------------------------------------------------------------------- /InputOutput/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /InputOutput/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /InputOutput/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | InputOutput 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /InputOutput/src/com/misiontic/main/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/InputOutput/src/com/misiontic/main/Main.java -------------------------------------------------------------------------------- /Intro Curso Java.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Intro Curso Java.docx -------------------------------------------------------------------------------- /Loops/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Loops/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /Loops/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Loops 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Loops/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /Loops/src/com/loops/main/Main.java: -------------------------------------------------------------------------------- 1 | package com.loops.main; 2 | 3 | public class Main { 4 | 5 | 6 | public static void main(String[] args) { 7 | 8 | //FOR 9 | /*Syxtax: 10 | for(int = ; ; ){ 11 | code block; 12 | } 13 | */ 14 | /* 15 | 16 | for (int i = 0; i < 100; i++) { 17 | System.out.println("i: "+i); 18 | } 19 | 20 | 21 | //FOR EACH - PENDIENTE LUEGO DE VER COLLECTIONS 22 | 23 | //WHILE 24 | /* 25 | int i = 0; 26 | while(i < 100) { 27 | System.out.println("i: " + i); 28 | i++; 29 | } 30 | 31 | 32 | int i = 0; 33 | int j = 100; 34 | while(i < 100 || j > 0) { 35 | System.out.println("i: " + i); 36 | System.out.println("j: " + j); 37 | i++; 38 | if(j<0) { 39 | j=0; 40 | }else { 41 | j=j-5; 42 | } 43 | } 44 | */ 45 | //DO-WHILE 46 | 47 | //EJERCICIO 48 | 49 | for (int i = 0; i < 10; i++) { 50 | System.out.println("i: "+i); 51 | for(int j = 0; j < 2; j=j+1) { 52 | System.out.println("j: "+j); 53 | } 54 | System.out.println("termino el for interior"); 55 | } 56 | } 57 | 58 | static int i1 = 1; 59 | static int i0 = 0; 60 | static int i = 0; 61 | private static int fibonacci() { 62 | // TODO Auto-generated method stub 63 | //CODIGO PARA LA FIBONNACIO 64 | i = i1 + i0; 65 | i0 = i1; 66 | i1 = i; 67 | return i; 68 | } 69 | 70 | } 71 | -------------------------------------------------------------------------------- /MeLi/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /MeLi/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /MeLi/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | MeLi 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /MeLi/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /MeLi/src/meli/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/MeLi/src/meli/Main.java -------------------------------------------------------------------------------- /MeLi/src/meli/Utils.java: -------------------------------------------------------------------------------- 1 | package meli; 2 | 3 | public class Utils { 4 | public static double round(double value, int places) { 5 | if (places < 0) throw new IllegalArgumentException(); 6 | 7 | long factor = (long) Math.pow(10, places); 8 | value = value * factor; 9 | long tmp = Math.round(value); 10 | return (double) tmp / factor; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /POO-tamagotchi/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /POO-tamagotchi/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /POO-tamagotchi/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | POO-tamagotchi 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /POO-tamagotchi/src/com/misiontic/main/Animal.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | public final class Animal { 4 | 5 | private float weight; 6 | private int happiness; //va de 0 a 100, 0 es triste; 100 es feliz. 7 | private int health; //va de 0 a 100, 0 muerto, 100 muy saludable. 8 | private int hungry; //va de 0 a 100, 0 es sin hambre y 100 es famelico. 9 | private int sleep; //va de 0 a 100, 0 es muy despierto y 100 es muy somnoliento 10 | private boolean awake; 11 | 12 | 13 | //GETTERS 14 | public float getWeight() { return weight; } 15 | public int getHappiness() { return happiness; } 16 | public int getHealth() { return health; } 17 | public int getHungry() { return hungry; } 18 | public int getSleep() { return sleep; } 19 | public boolean isAwake() { return awake; } 20 | 21 | //SETTERS 22 | public void setWeight(float weight) { this.weight = weight; } 23 | public void setHappiness(int happiness) { this.happiness = happiness; } 24 | public void setHealth(int health) { this.health = health; } 25 | public void setHungry(int hungry) { this.hungry = hungry; } 26 | public void setSleep(int sleep) { this.sleep = sleep; } 27 | 28 | // Builder Pattern pag -34 29 | public static class Builder { 30 | private float weight = 0; 31 | private int happiness = 100; 32 | private int health = 100; 33 | private int hungry = 0; 34 | private int sleep = 0; 35 | private boolean awake = true; 36 | 37 | public Builder weight(float value) { 38 | weight = value; 39 | return this; 40 | } 41 | public Builder happiness(int value) { 42 | happiness = value; 43 | return this; 44 | } 45 | public Builder health(int value) { 46 | health = value; 47 | return this; 48 | } 49 | public Builder hungry(int value) { 50 | hungry = value; 51 | return this; 52 | } 53 | public Builder sleep(int value) { 54 | sleep = value; 55 | return this; 56 | } 57 | public Builder awake(boolean value) { 58 | awake = value; 59 | return this; 60 | } 61 | 62 | public Animal build() { 63 | return new Animal(this); 64 | } 65 | } 66 | 67 | private Animal(Builder builder) { 68 | this.weight = builder.weight; 69 | this.happiness = builder.happiness; 70 | this.health = builder.health; 71 | this.hungry = builder.hungry; 72 | this.sleep = builder.sleep; 73 | this.awake = builder.awake; 74 | } 75 | 76 | //Tengo que dar una respuesta cuando termine de comer? 77 | //Yo quiero decir si ya termine de comer 78 | public void eat(Food food) { 79 | weight = weight + 2; 80 | if(hungry <= food.getCalories()) { 81 | hungry = 0; 82 | System.out.println("Estoy demasiado lleno, me voy a enfermar de tanto comer"); 83 | health = health -2; 84 | }else { 85 | hungry = hungry - food.getCalories(); 86 | } 87 | } 88 | private void eat() { 89 | sleep = 100; 90 | health = health + 1; 91 | } 92 | 93 | private void makeExercise() { 94 | happiness = happiness + 1; 95 | hungry = hungry + 10; 96 | health = health + 3; 97 | weight = weight - 1; 98 | sleep = sleep + 5; 99 | 100 | } 101 | public void play() { 102 | sleep = sleep + 5; 103 | happiness = happiness + 5; 104 | hungry = hungry + 5; 105 | } 106 | 107 | } 108 | -------------------------------------------------------------------------------- /POO-tamagotchi/src/com/misiontic/main/Food.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | public class Food { 4 | private final int calories; 5 | 6 | public Food(int calories) { 7 | super(); 8 | this.calories = calories; 9 | } 10 | 11 | public int getCalories() { 12 | return calories; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /POO-tamagotchi/src/com/misiontic/main/Main.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | public class Main { 4 | 5 | public static void main(String[] args) { 6 | 7 | Animal cat = new Animal.Builder().weight(6).happiness(100).build(); 8 | 9 | Food apple = new Food(5); 10 | 11 | Veterinary veterinary = new Veterinary(); 12 | Medicine m = veterinary.prescribeMedicine(cat); 13 | cat.eat(apple); 14 | System.out.println("la medicina que me recetan es: " ); 15 | 16 | System.out.println("hambre gatico: " + cat.getHungry()); 17 | System.out.println(Math.floor((100 - 50)/10)); 18 | System.out.println(Math.ceil(5.25)); 19 | 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /POO-tamagotchi/src/com/misiontic/main/Medicine.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | import java.util.Objects; 4 | 5 | public final class Medicine { 6 | 7 | //Item 16 pag 99 8 | private final String name; 9 | private final int healing; 10 | 11 | //GETTERS 12 | public String getName() { return name; } 13 | public int getHealing() { return healing; } 14 | 15 | public Medicine(String name, int healing) { 16 | super(); 17 | this.name = name; 18 | this.healing = healing; 19 | } 20 | 21 | /** 22 | * Best practice for hashcode - page 72 23 | * You can improve the performance making the parameters immutable and caching the hashCode page 74. 24 | */ 25 | @Override 26 | public int hashCode() { 27 | int result = name.hashCode(); 28 | result = 31 * result + Integer.hashCode(healing); 29 | return result; 30 | } 31 | 32 | @Override 33 | public boolean equals(Object obj) { 34 | if (this == obj) 35 | return true; 36 | if (obj == null) 37 | return false; 38 | if (getClass() != obj.getClass()) 39 | return false; 40 | Medicine other = (Medicine) obj; 41 | return healing == other.healing && Objects.equals(name, other.name); 42 | } 43 | 44 | 45 | 46 | } 47 | -------------------------------------------------------------------------------- /POO-tamagotchi/src/com/misiontic/main/Veterinary.java: -------------------------------------------------------------------------------- 1 | package com.misiontic.main; 2 | 3 | import java.util.HashSet; 4 | 5 | public class Veterinary { 6 | 7 | static HashSet medicines = new HashSet(); 8 | 9 | public Veterinary() { 10 | 11 | 12 | } 13 | 14 | public Medicine prescribeMedicine(Animal pet) { 15 | int triage = (100 - pet.getHealth()) 16 | + (100 - pet.getSleep())/10 17 | + (100 - pet.getHungry())/10; 18 | 19 | return medicines.stream() 20 | .filter(x -> x.getHealing() > triage) 21 | .sorted() 22 | .findFirst() 23 | .get(); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Poker/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Poker/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /Poker/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Poker 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Poker/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /Poker/src/Carta.java: -------------------------------------------------------------------------------- 1 | 2 | public class Carta { 3 | 4 | private Palo palo; 5 | 6 | 7 | 8 | public Palo getPalo() { 9 | return palo; 10 | } 11 | 12 | 13 | 14 | public void setPalo(Palo palo) { 15 | this.palo = palo; 16 | } 17 | 18 | 19 | 20 | int getValor(){ 21 | 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Poker/src/Controller.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Poker/src/Controller.java -------------------------------------------------------------------------------- /Poker/src/Jugador.java: -------------------------------------------------------------------------------- 1 | import java.util.ArrayList; 2 | import java.util.List; 3 | 4 | public class Jugador { 5 | 6 | private Carta carta1; 7 | private Carta carta2; 8 | 9 | private List mano = new ArrayList<>(); 10 | 11 | public void apostar() { 12 | 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Poker/src/Palo.java: -------------------------------------------------------------------------------- 1 | 2 | public enum Palo { 3 | DIAMANTE, TREBOL, CORAZON, PICAS; 4 | } 5 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # CursoJava 2 | 3 | ## Encapsulamiento: 4 | 5 | Es como si una clase fuera una caja negra para proteger el estado (atributos) de una clase y también ocultar la implementación de los métodos 6 | 7 | ## Herencia (todas las fichas de ajedrez heredan de la superclase Ficha) 8 | 9 | ## POLIMORFISMO: usar una variable o instancia con su supertipo(padre); 10 | 11 | ## Instancia (Peon, Torre) 12 | 13 | ## Enum 14 | 15 | 16 | OVERLOAD usar métodos que se llaman igual distinguiendo por parámetros 17 | 18 | 19 | Getters: 20 | Obtener un atributo 21 | Setters 22 | Cabmair el valir de un atributo 23 | Arrays: 24 | Set: 25 | Map: llave-valor 26 | 27 | List: 28 | 29 | 30 | Carro 1 31 | Carro 2 32 | Carro 3 33 | 0 34 | 1 35 | 2 36 | 37 | Length: 7 38 | Max index: 6 39 | 40 | 41 | Loops: 42 | 43 | For 44 | While (While-do ; do-while) 45 | Do 46 | while(){ 47 | } 48 | Foreach: for(Carro nombreVariable : lista) 49 | 50 | Break: rompe el loop 51 | 52 | Continue: continua con la siguiente iteración 53 | 54 | Return: retornar a donde fue llamada la función sin ejecutar lo restante en la función donde está el return. 55 | 56 | Recursividad: 57 | 58 | 59 | FAC(6)=Resultado = 120*6=720 60 | FAC(5) = FAC(4)-> 24 *5=120 61 | FAC(4) = FAC(3)-> 6*4=24 62 | FAC(3) = FAC(2)-> 2*3=6 63 | FAC(2) = FAC(1)-> 1*2=2 64 | FAC(1) = 1; 65 | 66 | Interfaces 67 | 68 | 69 | Condicionales (if-else) 70 | 71 | Variables 72 | 73 | Operaciones lógicas (&&-> and; || -> or; == equals) 74 | 75 | Overload 76 | 77 | 78 | Objetos 79 | 80 | 81 | 82 | 83 | 84 | 85 | AUTOBOXING 86 | UNBOXING 87 | 88 | MAquina virtual 89 | 90 | CASTEO: Transformar de un tipo en otro 91 | 92 | PRIMITIVAS: int, double, float, char, byte, boolean, short, long 93 | 94 | 95 | 96 | 97 | 98 | JAVA SE (STANDAR EDITION) -> corre en un computador con java 99 | JAVA EE(ENTERPRISE EDITION) -> corre en un servidor 100 | SERVIDOR 101 | -> WebLogic 102 | ->Glassfish 103 | ->Tomcat 104 | 105 | 106 | HILOS 107 | 108 | Excepciones: 109 | IndexOutOfBoundsException: tratando de obtener algo en un array de diferente tamaño 110 | StackOverflowError: Flujo infinito 111 | 112 | CLASE perro 113 | Ladrar 114 | Dormir 115 | Mover la cola 116 | Cocinar X 117 | 118 | 119 | 120 | Clase gato 121 | Maullar 122 | 123 | 124 | CREAR UNA CASA DONDE CONVIVAN UN CIERTO NÚMERO DE PERROS Y GATOS 125 | 126 | 127 | 128 | Eclipse: IDE desarrolla (Programa) 129 | 130 | C++: Lenguaje de programación (Ingles) 131 | 132 | Python: Lenguajes de programación (francés) 133 | 134 | Java: Lenguaje de programación (Español) 135 | 136 | 137 | 138 | GIT: (Drive) 139 | 140 | 141 | 142 | ALTA COHESION 143 | clase: 144 | Abstracción del mundo: Perro 145 | atributo valor 146 | Atributos (características): dientes = 32, raza=golden, tamaño: 50 147 | tipo (clase): numero, raza, numero 148 | 149 | Métodos(capacidades): ladrar, correr, comer, orinar, [PERRO 3 -> dar la mano] 150 | Argumentos (información externa) 151 | 152 | Privacidad 153 | public 154 | private 155 | protected 156 | 157 | numero: int (entero), double(fraccionarios), float(fraccionarios) 158 | 159 | 160 | 161 | Eficiencia: 162 | String (texto) "hola" "1" 163 | StringBuffer "hola" 164 | StringBuilder "hola" 165 | 166 | 167 | 168 | Enumeración 169 | 170 | Las responsabilidades tengan RELACIÓN 171 | 172 | BAJO ACOMPLAMIENTO 173 | 174 | Diferentes clases sean INDEPENDIENTES 175 | 176 | 177 | PERRO 1 PERRO 2 PERRO 3 178 | 179 | 180 | 181 | 182 | -------------------------------------------------------------------------------- /Recursiva/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Recursiva/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /Recursiva/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Recursiva 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Recursiva/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /Recursiva/src/Main.java: -------------------------------------------------------------------------------- 1 | 2 | public class Main { 3 | 4 | public static void main(String[] args) { 5 | // TODO Auto-generated method stub 6 | Recursiva recursiva = new Recursiva(); 7 | System.out.println(recursiva.sumatoria(6)); 8 | 9 | System.out.println("hello"); 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /Recursiva/src/Recursiva.java: -------------------------------------------------------------------------------- 1 | 2 | public class Recursiva { 3 | 4 | int sumatoria(int iNumero) { 5 | if(iNumero == 0) { 6 | return 0; 7 | } 8 | return iNumero + sumatoria(iNumero-1); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /RemoteSystemsTempFiles/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | RemoteSystemsTempFiles 4 | 5 | 6 | 7 | 8 | 9 | 10 | org.eclipse.rse.ui.remoteSystemsTempNature 11 | 12 | 13 | -------------------------------------------------------------------------------- /Switch/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Switch/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /Switch/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Switch 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Switch/src/com/misiontic/main/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Switch/src/com/misiontic/main/Main.java -------------------------------------------------------------------------------- /Tienda/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Tienda/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Tienda 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Tienda/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /Tienda/bin/Articulo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Tienda/bin/Articulo.class -------------------------------------------------------------------------------- /Tienda/bin/Carro.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Tienda/bin/Carro.class -------------------------------------------------------------------------------- /Tienda/bin/Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Tienda/bin/Main.class -------------------------------------------------------------------------------- /Tienda/bin/Moto.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/Tienda/bin/Moto.class -------------------------------------------------------------------------------- /Tienda/src/Articulo.java: -------------------------------------------------------------------------------- 1 | 2 | public class Articulo { 3 | 4 | 5 | private int llantas; 6 | private int price; 7 | 8 | public Articulo(int llantas, int price) { 9 | super(); 10 | this.llantas = llantas; 11 | this.price = price; 12 | } 13 | 14 | public int getPrice() { 15 | return price; 16 | } 17 | 18 | public void setPrice(int price) { 19 | this.price = price; 20 | } 21 | 22 | public double descuento(double descuento) { 23 | return price * (1-descuento); 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /Tienda/src/Carro.java: -------------------------------------------------------------------------------- 1 | 2 | public class Carro extends Articulo { 3 | 4 | public Carro(int price) { 5 | super(4, price); 6 | } 7 | 8 | public double descuento(double descuento) { 9 | descuento += 0.1; 10 | return super.descuento(descuento); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Tienda/src/Main.java: -------------------------------------------------------------------------------- 1 | 2 | public class Main { 3 | 4 | public static void main(String[] args) { 5 | Articulo a = new Articulo(3, 1000); 6 | 7 | Articulo carro1 = new Carro(1000); 8 | Articulo moto = new Moto(2, 1000); 9 | 10 | soloReciboArticulos(carro1); 11 | soloReciboArticulos(moto); 12 | 13 | } 14 | 15 | 16 | public static void soloReciboArticulos(Articulo articulo) { 17 | System.out.println(articulo.descuento(0.3)); 18 | } 19 | 20 | } 21 | -------------------------------------------------------------------------------- /Tienda/src/Moto.java: -------------------------------------------------------------------------------- 1 | 2 | public class Moto extends Articulo { 3 | 4 | public Moto(int llantas, int price) { 5 | super(llantas, price); 6 | } 7 | 8 | } 9 | -------------------------------------------------------------------------------- /Variables/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Variables/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /Variables/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Variables 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Variables/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /Variables/src/main/diurno.java: -------------------------------------------------------------------------------- 1 | package main; 2 | 3 | public class diurno { 4 | 5 | 6 | 7 | //Declaration 8 | // ; 9 | int edadPensionMujer; 10 | 11 | //Declaration + initialization 12 | // = ; 13 | static int edadPension = 70; 14 | 15 | 16 | public void asignacion() { 17 | //Assignment 18 | // = ; 19 | edadPensionMujer = 62; 20 | } 21 | 22 | 23 | /* 24 | * Punto de inicio 25 | */ 26 | public static void main(String[] args) { 27 | /* 28 | //System.out.println("HELLO WORDL"); 29 | 30 | System.out.println("La edad de la pension es:" + edadPension); 31 | 32 | // = ; 33 | int fechaNacimiento = 1993; 34 | 35 | 36 | long edad = 28L; 37 | long saldo = 2147483648L; 38 | long vistasDeYoutube = 9000000000L; 39 | 40 | 41 | float pi = 3.141592F; 42 | double euler = 2.718; 43 | 44 | 45 | char c = ' '; 46 | char n ='8'; 47 | String s = "Hello wordl"; 48 | String s2 = "3"; 49 | String s3 = "a"; 50 | 51 | 52 | boolean t = true; 53 | boolean f = false; 54 | 55 | if(55 < edadPension) { 56 | System.out.println("No se puede pensionar"); 57 | } 58 | if(70 > edadPension) { 59 | System.out.println("Felicitaciones usted se va a pensionar"); 60 | } 61 | */ 62 | //operacionesMatematicas(); 63 | //operacionesTexto(); 64 | operacionesLogicas(); 65 | 66 | } 67 | 68 | private static void operacionesLogicas() { 69 | boolean a = false; //0 70 | boolean b = false; //0 71 | boolean c = true;//1 72 | //Multiplicacion - AND - & 73 | System.out.println(a & b & c); 74 | 75 | //Or | 76 | System.out.println(a | b | c); 77 | 78 | System.out.println(a | b & c); 79 | 80 | 81 | } 82 | 83 | 84 | public static void operacionesTexto() { 85 | String a = 'Camilo'; 86 | String b = "Hernandez"; 87 | 88 | //Concatenacion (Unir textos) + 89 | System.out.println(c); 90 | } 91 | 92 | 93 | public static void operacionesMatematicas() { 94 | int a = 3; 95 | int b = 5; 96 | 97 | //SUMA + 98 | int c = a + b; 99 | System.out.println(c); 100 | 101 | //RESTA - 102 | int d = a - b; 103 | System.out.println(d); 104 | 105 | //Multiplicacion * 106 | int e = a * b; 107 | System.out.println(e); 108 | 109 | 110 | //Exponente se necesita una libreria, porque esta operacion no existe naturalmente en java 111 | 112 | 113 | //Division / 114 | //de nuemeros enteros me va a dar solo la parte entera 115 | //si quiero los decimales debo anteponer esto (float) o (double) 116 | float f = (float) a / b; 117 | System.out.println(f); 118 | 119 | //La division de numeros flotantes ya naturalmente me va a dar un decimal 120 | float g = 10F; 121 | float h = 3F; 122 | float i = g/h; 123 | System.out.println(i); 124 | 125 | //Modulo % es lo que sobra de una division entera 126 | 127 | System.out.println(20%6); 128 | 129 | 130 | 131 | } 132 | } 133 | -------------------------------------------------------------------------------- /Variables/src/main/nocturno.java: -------------------------------------------------------------------------------- 1 | package main; 2 | 3 | public class nocturno { 4 | 5 | 6 | 7 | public static void main(String[] args) { 8 | //Declaration 9 | // ; 10 | long deuda; 11 | 12 | //Assignment (Must be previously declared) 13 | // = 14 | deuda = -300L; 15 | 16 | //Declaration + initialization 17 | // = ; 18 | int edadDePension = 57; 19 | 20 | edadDePension = 80; 21 | 22 | int numero2 = edadDePension; 23 | 24 | edadDePension = 0; 25 | numero2 = edadDePension; 26 | 27 | //System.out.println(edadDePension); 28 | //System.out.println(numero2); 29 | 30 | 31 | /*PROGRAME UN CAJERO DONDE LO PRIMERO QUE LE MUESTRA EN PANTALLA 32 | ES EL SALDO, LUEGO LE DA DINERO SI LO QUE QUIERE SACAR ES MENOR 33 | AL SALDO QUE TIENE 34 | int saldo; 35 | saldo = 700000; 36 | int retiro = 60000; 37 | 38 | System.out.println("saldo: " + saldo); 39 | if(retiro < saldo) { 40 | System.out.println("nuevo saldo:" + (saldo-retiro)); 41 | saldo = saldo-retiro; 42 | } 43 | System.out.println("saldo que quedo: " + saldo);*/ 44 | operacionesLogicas(); 45 | 46 | } 47 | 48 | 49 | private static void operacionesLogicas() { 50 | boolean a = true; //1 51 | boolean b = false; //0 52 | boolean c = true;//1 53 | //Multiplicacion - AND - & 54 | System.out.println(a & b & c); 55 | 56 | //Or | 57 | System.out.println(a | b | c); 58 | 59 | System.out.println((a | b) & (b | c)); 60 | 61 | } 62 | 63 | 64 | public static void operacionesTexto() { 65 | String a = "Camilo"; 66 | String b = "Hernandez"; 67 | char espacio = ' '; 68 | String c = a + espacio + b; 69 | 70 | //Concatenacion (Unir textos) + 71 | System.out.println(c); 72 | } 73 | 74 | 75 | public static void operacionesMatematicas() { 76 | int a = 3; 77 | int b = 5; 78 | 79 | //SUMA + 80 | int c = a + b; 81 | System.out.println(c); 82 | 83 | //RESTA - 84 | int d = a - b; 85 | System.out.println(d); 86 | 87 | //Multiplicacion * 88 | int e = a * b; 89 | System.out.println(e); 90 | 91 | 92 | //Exponente se necesita una libreria, porque esta operacion no existe naturalmente en java 93 | 94 | 95 | //Division / 96 | //de nuemeros enteros me va a dar solo la parte entera 97 | //si quiero los decimales debo anteponer esto (float) o (double) 98 | float f = (float) a / b; 99 | System.out.println(f); 100 | 101 | 102 | //La division de numeros flotantes ya naturalmente me va a dar un decimal 103 | float g = 10F;//10.0 104 | float h = 3F;//3.0 105 | float i = g/h; 106 | System.out.println(i); 107 | 108 | 109 | //Modulo % es lo que sobra de una division entera 110 | 111 | System.out.println(10 % 3); 112 | 113 | 114 | 115 | } 116 | 117 | } 118 | -------------------------------------------------------------------------------- /VoltearArray/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /VoltearArray/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /VoltearArray/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | VoltearArray 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /VoltearArray/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /VoltearArray/src/com/volteararray/main/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CamiloHernandezC/CursoJava/e3a812e374eaa454c76aa33e8834eb0bbc1375c5/VoltearArray/src/com/volteararray/main/Main.java -------------------------------------------------------------------------------- /solucionLeonardo/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /solucionLeonardo/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /solucionLeonardo/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | solucionLeonardo 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /solucionLeonardo/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.8 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.8 12 | -------------------------------------------------------------------------------- /solucionLeonardo/src/solucionLeonardo/Dron.java: -------------------------------------------------------------------------------- 1 | package solucionLeonardo; 2 | 3 | public class Dron { 4 | 5 | private int x; 6 | private int y; 7 | private String orientacion; 8 | private int frontSide; 9 | 10 | public Dron() { 11 | this.x = 0; 12 | this.y = 0; 13 | this.orientacion = "norte"; 14 | } 15 | 16 | public Dron(int x, int y, String orientacion) { 17 | this.x = x; 18 | this.y = y; 19 | this.orientacion = orientacion; 20 | } 21 | 22 | public int getX() { 23 | return x; 24 | } 25 | 26 | public void setX(int x) { 27 | this.x = x; 28 | } 29 | 30 | public int getY() { 31 | return y; 32 | } 33 | 34 | public void setY(int y) { 35 | this.y = y; 36 | } 37 | 38 | public String getOrientacion() { 39 | return orientacion; 40 | } 41 | 42 | public void setOrientacion(String orientacion) { 43 | this.orientacion = orientacion; 44 | } 45 | 46 | public int getFrontSide() { 47 | return frontSide; 48 | } 49 | 50 | public void setFrontSide(int frontSide) { 51 | this.frontSide = frontSide; 52 | } 53 | 54 | public void avanzar(int distancia) { 55 | switch (orientacion){ 56 | case "norte": 57 | y += distancia; 58 | break; 59 | case "sur": 60 | y -= distancia; 61 | break; 62 | case "oriente": 63 | x += distancia; 64 | break; 65 | case "occidente": 66 | x -= distancia; 67 | break; 68 | } 69 | } 70 | 71 | public void procesarComando(String comando){ 72 | 73 | for (String c : comando.split("")){ 74 | switch (c) { 75 | case "A": 76 | avanzar(1); 77 | break; 78 | case "D": 79 | girarHorario(); 80 | break; 81 | case "I": 82 | girarAntihorario(); 83 | break; 84 | } 85 | } 86 | } 87 | 88 | public void girarHorario() { 89 | if(orientacion == "norte"){ 90 | orientacion = "oriente"; 91 | return; 92 | } 93 | if(orientacion == "oriente"){ 94 | orientacion = "sur"; 95 | return; 96 | } 97 | if(orientacion == "sur"){ 98 | orientacion = "occidente"; 99 | return; 100 | } 101 | if(orientacion == "occidente"){ 102 | orientacion = "norte"; 103 | return; 104 | } 105 | } 106 | 107 | public void girarAntihorario() { 108 | if(orientacion == "norte"){ 109 | orientacion = "occidente"; 110 | return; 111 | } 112 | if(orientacion == "occidente"){ 113 | orientacion = "sur"; 114 | return; 115 | } 116 | if(orientacion == "sur"){ 117 | orientacion = "oriente"; 118 | return; 119 | } 120 | if(orientacion == "oriente"){ 121 | orientacion = "norte"; 122 | return; 123 | } 124 | } 125 | 126 | 127 | public void turn(boolean sentido) { 128 | if(sentido) { 129 | frontSide+=90; 130 | if(frontSide>=360) { 131 | frontSide-=360; 132 | } 133 | } 134 | else { 135 | frontSide-=90; 136 | if(frontSide <= 0) { 137 | frontSide+=360; 138 | } 139 | } 140 | } 141 | 142 | } 143 | -------------------------------------------------------------------------------- /solucionLeonardo/src/solucionLeonardo/DronTest.java: -------------------------------------------------------------------------------- 1 | package solucionLeonardo; 2 | 3 | import static org.junit.jupiter.api.Assertions.*; 4 | 5 | import org.junit.jupiter.api.Test; 6 | 7 | class DronTest { 8 | 9 | @Test 10 | void testGirarHorario() { 11 | Dron dron = new Dron(); 12 | dron.girarHorario(); 13 | assertEquals("oriente", dron.getOrientacion()); 14 | } 15 | 16 | @Test 17 | void testGirarAntiHorario() { 18 | Dron dron = new Dron(); 19 | dron.girarAntihorario(); 20 | assertEquals("occidente", dron.getOrientacion()); 21 | } 22 | 23 | @Test 24 | void testTurnClockWise() { 25 | Dron dron = new Dron(); 26 | dron.turn(true); 27 | assertEquals(90, dron.getFrontSide()); 28 | } 29 | 30 | @Test 31 | void testTurnClockWise5Times() { 32 | Dron dron = new Dron(); 33 | dron.turn(true); 34 | dron.turn(true); 35 | dron.turn(true); 36 | dron.turn(true); 37 | dron.turn(true); 38 | assertEquals(90, dron.getFrontSide()); 39 | } 40 | 41 | @Test 42 | void testTurnClockWiseFrom270To360() { 43 | Dron dron = new Dron(); 44 | dron.setFrontSide(270); 45 | dron.turn(true); 46 | assertEquals(0, dron.getFrontSide()); 47 | } 48 | 49 | @Test 50 | void testTurnCounterClockWise() { 51 | Dron dron = new Dron(); 52 | dron.turn(false); 53 | assertEquals(270, dron.getFrontSide()); 54 | } 55 | 56 | @Test 57 | void testAvanzar() { 58 | Dron dron = new Dron(); 59 | dron.avanzar(3); 60 | assertEquals(3, dron.getY()); 61 | } 62 | 63 | @Test 64 | void testAvanzarConCambioDeOrientacion() { 65 | Dron dron = new Dron(); 66 | dron.avanzar(3); 67 | assertEquals(3, dron.getY()); 68 | dron.girarAntihorario(); 69 | dron.avanzar(2); 70 | assertEquals(-2, dron.getX()); 71 | } 72 | 73 | @Test 74 | void testProcesarComando() { 75 | Dron dron = new Dron(); 76 | dron.procesarComando("AADAAAIA"); 77 | assertEquals(3, dron.getX()); 78 | assertEquals(3, dron.getY()); 79 | } 80 | 81 | @Test 82 | void testProcesarVariosComandos() { 83 | Dron dron = new Dron(); 84 | dron.procesarComando("AADAAAIA"); 85 | dron.procesarComando("DAADAAAA"); 86 | assertEquals(5, dron.getX()); 87 | assertEquals(-1, dron.getY()); 88 | } 89 | 90 | } 91 | -------------------------------------------------------------------------------- /solucionLeonardo/src/solucionLeonardo/Main.java: -------------------------------------------------------------------------------- 1 | package solucionLeonardo; 2 | 3 | public class Main { 4 | 5 | public static void main(String[] args) { 6 | // TODO Auto-generated method stub 7 | Dron dron1 = new Dron(); 8 | Dron dron2 = new Dron(); 9 | 10 | 11 | dron1.procesarComando("DAAA"); 12 | 13 | 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /solucionLeonardo/src/solucionLeonardo/Parametros.java: -------------------------------------------------------------------------------- 1 | package solucionLeonardo; 2 | 3 | public class Parametros { 4 | 5 | public static final int NUMERO_DRONES = 20; 6 | } 7 | --------------------------------------------------------------------------------