Más de 56,000 millones de dispositivos en todo el mundo Ejecutan Java es un lenguaje orientado a objetos rápido seguro y confiable es el lenguaje preferido por las fintech y también los bancos y también por empresas como Microsoft Amazon Google Uber Netflix Spotify Instagram Ebay y airbnb escribir código en Java es seguro y también se ejecuta muy rápido y Espera espera el sueldo Promedio para un desarrollador Java entre los Junior los mid Level y los senior es en Nueva Zelanda $70,000 al año en Estados Unidos $1,000 al año en Chile $5 6,000 al año Así que
tienes que aprender Java y lo tienes que aprender [Música] ahora este video contempla las primeras 4 horas del curso completo de Ultimate Java si quieres acceder a este curso completo realizar preguntas y que estas sean resueltas y tener un hermoso Certificado cuando termines este curso Entonces te recomiendo que te inscribas en la academia Hola mundo para que puedas aprender conmigo tenemos cursos de Java javascript react python html css sql y muchos más y por supuesto que estamos agregando más cursos todo el tiempo como este que estás viendo te dejo un cupón con descuento en la
descripción de este video para que la anualidad te salga más barato Ahora sí continuamos con el Curso antes de empezar a programar o siquera Descargar algún software primero vamos a ver de qué se trata Java Java es un lenguaje de programación multiplataforma orientado a objetos y también es una plataforma de computación Java fue lanzado en 1995 por la empresa Sun microsystem Aunque el proyecto comenzó en el año 91 y se lanzó al público general el año 96 actualmente Java se está ejecutando en más de 56 miles de millones de dispositivos alrededor de todo el mundo
actualmente tú puedes ver a Java corriendo en dispositivos móviles computadores servidores y muchos otros dispositivos que actualmente soportan Java Pero cómo funciona Java y Por qué es tan popular primero hablemos de cómo se programa para un computador de manera independiente da lo mismo el lenguaje de programación si quieres construir una aplicación por ejemplo para un Computador con Windows vamos a colocarle acá una W tú vas a tener que escribir un código en específico entonces este eres tú y tú vas a construir una aplicación y esta se la podemos instalar al computador con Windows ahora vamos
a suponer que quieres hacer exactamente esto mismo pero para un sistema operativo Linux en ese caso vas a tener que construir toda la aplicación de nuevo desde cero Entonces tú vas a estar acá vas a construir otra aplicación que No es la misma que esta es otra completamente distinta y esta se va a instalar en un sistema operativo Linux Y si queremos hacer exactamente esto mismo para macos vas a tener que que construir otra aplicación la cual vas a ejecutar sobre un computador con macos Y espérate porque nosotros todavía no hemos hablado de diferentes arquitecturas
Qué quiere decir esto quiere decir que si nosotros tenemos acá un computador con Windows pero este tiene por ejemplo un cpu amd y Luego tenemos otra máquina pero que en lugar de tener un cpu amd va a tener un cpu Intel vas a tener que construir dos aplicaciones una para los computadores con amd y otra para los computadores con Intel Esto hace que construir aplicaciones se vuelva en algo ridículamente aburrido y también muy caro porque vas a tener que tener desarrolladores dependiendo de la arquitectura para la cual tú te encuentres desarrollando esto es como Que
tú te encuentras acá y tuvieses que hablar en chino cantonés vamos a colocar acá chino y voy a mover esto cantonés Ahora sí y vuelvo a colocar la máquina acá abajo también como que tuvieses que hablar español y aquí hay otra máquina alemán japonés y así sucesivamente dependiendo de Cuántas máquinas existan Ahora imagínate lo siguiente lo que vamos a hacer nosotros es justamente delante de estas máquinas vamos a colocar un intérprete vamos a colocar el Intérprete Eso sí con otro color cada uno de estos intérpretes habla el idioma que tú hablas más el idioma que
tiene que Traducir Entonces por ejemplo si es que tú hablas inglés cada uno de estos intérpretes habla inglés y además habla chin cantonés o español al alemán japonés y así sucesivamente de esta manera tú solamente tienes que preocuparte de poder hablar bien el inglés y no es necesario que te aprendas todos los otros idiomas que existan Estos van a ser trabajo de los intérpretes y ahora vamos a empezar a reemplazar un par de cosas en lugar de tú hablar inglés tú lo que vas a hacer es hablar Java Y estos intérpretes que hablan chin cantonés
español alemán y japonés los vamos a reemplazar por una j jbm vamos a colocar la jbm sobre todas estas máquinas de esta manera tú te puedes preocupar solamente de escribir código escrito en Java y luego después de esto vamos a pasar nuestro código Escrito en Java por un compilador esto lo que va a hacer es pasar a través de un Java compiler el cual se va a encargar de tomar absolutamente todo el código que tú escribiste en Java y lo va a transformar a Java byte code una vez que nosotros tenemos este Java B code
ya podemos pasárselo a cada una de estas jbm para que pueda ser ejecutado de manera correcta sobre cada una de estas máquinas recuerda que en estas máquinas nosotros tenemos un computador con Windows acá tenemos un Linux acá tenemos un macos y acá tenemos un solaris ahora vamos a volver a dibujar esto de una manera un poco más clara acá tenemos nuestro código escrito en Java este código pasa por un Java compiler el cual te va a entregar a ti un Java byte code este Java byte code es el que nosotros le vamos a pasar a
la jbm y jbm significa Java virtual Machine o máquina virtual de Java la jbm o la Java virtual Machine se encarga de proporcionar una Especificación de cómo se tiene que ejecutar el código entonces la jbm se va a encargar de tomar este Java bte code y decir qué es lo que tiene que hacer ahora ahora para nosotros poder instalar una jbm dentro de nuestras máquinas vamos a necesitar algo que se llama jre o También conocido como Java runtime environment el jre es el encargado de instalar la jbm dentro de nuestras máquinas además la jre proporciona
archivos de Configuración y librerías o bibliotecas que la jbm tiene que utilizar algo también sumamente importante el código para la jre se tiene que escribir de manera independiente para cada una de las plataformas esto quiere decir vamos a escribir una aplicación de jre o vamos a construir la jre para Mac también vamos a construir una para Linux también vamos a construir una para Windows y así sucesivamente entonces la jre no es una solamente van a existir tantas jre como Plataformas se est est soportando Y actualmente se soporta para Mac Linux y también Windows Entonces por
lo menos hay tres jre existentes y ahora algo importante para que nosotros podamos tomar el código escrito en Java y poder transformarlo a bytecode vamos a necesitar un compilador pero este no se encuentra dentro del jre este viene dentro de otra aplicación o de otro programa que nosotros podemos instalar el cual se llama Jdk que en este caso quiere decir Java de kit o el kit de desarrollo para Java este jdk incluye el compilador vamos a colocar acá incluye el compilador O como le había dicho antes el Java compiler Pero además este incluye el jre
por lo que la herramienta que nosotros vamos a tener que instalar para poder ejecutar aplicaciones Java y también poder compilar nuestro código es jdk que lo vamos a descargar en un video Posterior antes de empezar a escribir código en Java tenemos que ver de manera superficial la orientación a objetos Java es un poco diferente a los otros lenguajes de programación porque está muy fuertemente orientado a objetos y con esto me refiero a que si nosotros no creamos un objeto de manera inicial nuestras aplicaciones no se van a ejecutar ahora esto tampoco es tan terrible ya
que cada vez que nosotros Creamos una aplicación con el editor de texto o el ID que nosotros vamos a utilizar este nos va a crear el objeto principal de todas maneras no es necesario que nosotros lo creemos sin embargo igual es importante que lo entiendas por lo menos un poquito antes de que nosotros empecemos a escribir código ya que es mucho mejor que entiendas este pequeño fundamento antes de Sencillamente asumirlo como magia sí van a existir un par de cosas que Nosotros vamos a obviar y vamos a ver más en profundidad más adelante pero es
muy importante que primero veamos la orientación a objetos de manera superficial entonces la orientación a objetos se compone principalmente de clases y también de objetos aunque también a los objetos se les puede llamar instancia de una clase en particular vamos a colocar instancia de clase Las clases son como el plano de construcción de una casa si tú no has Visto alguna vez un plano de construcción de una casa te vas a dar cuenta que es un documento que contienen muchas especificaciones de cómo se tiene que construir una casa vamos a dibujar aquí adentro una casita
con su ventanita y su puerta entonces el plano vendría siendo la clase misma esto quiere decir que una clase no es un objeto sino que Sencillamente es cómo se va a construir esto y ahora el objeto vendría siendo una casa ya construida entonces en base A este plano que nosotros tenemos o la clase lo que nosotros vamos a hacer es empezar a construir casas y vamos a construir tantas casas como nosotros queramos aquí nosotros tenemos una y después tenemos otra y así sucesivamente todas estas casitas se crean a partir de esta clase o en este
caso el plano de construcción de una casa y ahora tú me vas a empezar a decir Oye pero dame un ejemplo real si nosotros en programación no tenemos casas Aunque sí podrían Existir casas dentro de la programación pero te voy a dar ejemplos más reales vamos a eliminar todo esto y te voy a dar dos ejemplos el primero vendría siendo un control de ps5 o de PlayStation y el segundo ejemplo va a ser con un usuario para el primer ejemplo el control de PlayStation 5 alguien diseñó este control Lo que significa que alguien diseñó un
esquemático diseñó el color diseñó también la forma que va a tener el Control de PlayStation para que finalmente nosotros terminemos con algo más o menos así obviamente este tú lo puedes personalizar le puedes cambiar los colores pero inicialmente todos van a ser exactamente lo mismo un control de PlayStation el diseño de este control de PlayStation es la clase y este control de PlayStation que yo tengo acá en mis manos es una instancia de un control de PlayStation o También conocido como un objeto ahora estos objetos tienen Métodos y también tienen propiedades las propiedades de un
objeto vendrían siendo por ejemplo en este caso el color que tiene la cantidad de botones que tiene las flechas que puede tener pero también este control cuando tú presionas uno de estos botones va a ejecutar una acción si es que tú aprietas el botón x el personaje va a saltar si es que tú aprietas el R1 el personaje va a atacar Y si te demoras mucho en apretar alguno de estos botones lo más probable es que Te mueras porque el elden ring es muy difícil ahora vamos a ver un ejemplo con un usuario el caso
de los usuarios vamos a colocar aquí un usuario tienen nombre tienen correo electrónico algunos también van a tener contraseñas todas estas cosas son propiedades vamos a anotar acá propiedades pero también estos usuarios pueden iniciar sesión vamos a colocarle un abre y cierra paréntesis para indicar que esto es una Acción que pueden ejecutar pueden también cerrar su sesión en el caso que sea una red social pueden agregar amigos Pueden seguir personas vamos a colocar acá seguir y todas estas acciones que nosotros hemos colocado acá se llaman métodos Entonces los objetos tienen propiedades o características estas características
te indican la forma que va a tener un objeto en particular acá nosotros tenemos un nombre un correo electrónico y también tenemos una Contraseña y también los objetos tienen métodos y los métodos te indican las acciones que pueden realizar los objetos y en este caso tenemos Iniciar sesión cerrar sesión agregar seguir etcétera etcétera con los métodos además de tú hacer todas estas cosas también puedes saltar poner un juego en pausa A menos que sea el elden ring en ese caso solamente te mueres Y así sucesivamente ahora vamos a ver cómo se puede escribir esto dentro
del código en el caso de un Control de PlayStation nosotros lo definiríamos como algo así control Playstation Fíjate que la c se encuentra en mayúscula después nosotros tenemos la p y la s a esta forma de escribir ir los nombres se les conoce como Pascal Case y Pascal Case significa que la primera letra de una palabra se va a encontrar en mayúscula y esto es porque nosotros no podemos utilizar los espacios para referirnos a nombres de clases o nombres de objetos y ahora lo que vamos a hacer Nosotros es crear una instancia de este control
de PlayStation para nosotros crear una instancia del control de PlayStation vamos a verlo en profundidad por supuesto después cuando estemos viendo el curso de Java Pero lo importante es que esto se va a llamar control PlayStation Fíjate en esta sutil diferencia en el caso de definir clases nosotros utilizamos Pascal Case Y en este caso la primera letra se encuentra con mayúscula y también la primera letra De cada palabra que tenga el nombre de la clase sin embargo con los objetos nosotros tenemos la primera letra Siempre con minúscula siempre y luego cada palabra que se encuentre
dentro del nombre del objeto va a tener su primera letra con mayúscula a esto se le conoce como camel Case estas son dos formas que nosotros vamos a ver mucho cuando estemos desarrollando con Java la primera cuando nosotros estemos creando una clase va a ser con Pascal Case y Después cuando estemos trabajando con las instancias de los objetos va a ser con camel Case y ahora algo también muy importante que lo vamos a ver apenas nosotros creemos nuestra primera aplicación con Java existe una clase que se le llama la clase principal la cual se llama
Main todas las aplicaciones que nosotros creemos en Java van a tener una clase que se llama Main si no tiene esta clase nuestra aplicación no funciona y también la clase Main va a tener un Método o una acción que puede ejecutar que se llama Main pero fíjate que en este caso es una m con minúscula en este caso es un método es una acción que puede tomar esta clase y Qué significa esto cada vez que nosotros vayamos a ejecutar una aplicación construida con Java lo primero de lo primero que se va a ejecutar no importa
dónde te encuentres es el método Main de la clase Main y ahora antes que nosotros pasemos a escribir código yo te había dicho que Nosotros tenemos clases que en este caso tenemos una que se llama Main pero nosotros también podríamos tener instancias sin embargo las instancias de main nosotros no la vamos a ver así que voy a sacar esto y voy a colocar nuevamente el control de PlayStation pero lo voy a anotar como control ps5 los métodos yo te había dicho antes que se encuentran asociados a las instancias de los objetos o a los objetos
Acuérdate que un objeto vendría siendo la cosa ya Construida lo voy a anotar acá control ps5 Recuerda minúscula es un objeto mayúscula es la clase entonces la clase puede tener métodos estos se llaman métodos de clase y Qué significa esto que nosotros solamente los vamos a poder llamar desde la clase y también nosotros tenemos los métodos de los objetos y estos sencillamente se llaman métodos y ahora ya que nosotros sabemos que los objetos Recuerda que el objeto vendría siendo el control de Play o el usuario Pueden tener métodos o acciones y también nosotros tenemos nuestros
planos de construcción que son las clases que también tienen sus acciones o métodos de clase estos dos no se mezclan son completamente distintos pero ya que nosotros sabemos esto ahora te tengo que explicar cómo yo puedo anotar la diferencia entre un método de clase o un método normal los métodos de clase se les llama static o métodos estáticos que quiere decir que el método que nosotros Estamos creando es exclusivo de la clase y en el caso que nosotros queramos colocar un método que va a utilizar un objeto en este caso el control de PlayStation 5
no es necesario que nosotros utilicemos la palabra de static Y esto es absolutamente todo lo que tú necesitas saber por ahora sobre orientación a objetos cuando nosotros lleguemos a la sección dedicada a orientación a objetos nosotros vamos a aprender muchas más cosas sobre estos y Lo vamos a ver por supuesto que en mucho mayor detalle por ahora van a ver un par de cosas que nosotros vamos a obviar para que nosotros podamos empezar a construir aplicaciones ahora ya podemos empezar a descargar las herramientas que vamos a utilizar en el transcurso de este curso para poder
desarrollar aplicaciones con Java y lo primero que vamos a necesitar es un ID o un entorno de desarrollo integrado ahora ID significa integrated development Environment que eso está en inglés pero cuando tú lo traduces al español significa ambiente de desarrollo integrado ahora sí ya podemos continuar vamos a tener que Descargar uno el que personalmente a mí me gusta mucho y que ustedes también deberían Descargar Si es que quieren tener exactamente la misma experiencia de desarrollo que yo es intellij una vez que se encuentran acá tienen que venir aquí a este botón que dice Download aquí
Sencillamente pueden Pinchar en Close o aceptan Las Cookies lo que ustedes prefieran pero antes de nosotros pinchar en Descargar fíjate Esta es la versión Ultimate esta versión viene con muchísimas funcionalidades pero la verdad es que nosotros no vamos a utilizar todas las funcionalidades que se encuentran acá y además es de pago así que nosotros vamos a bajar un poquito más hasta que lleguemos a esta parte donde nos está indicando intellij idea Community Edition esta versión es Muy importante uno porque es gratis y contiene todas las herramientas suficientes y necesarias para que nosotros podamos llevar a
cabo este curso así que nosotros vamos a descargar esto fíjate acá Eso sí la versión que vas a necesitar si es que estás con Windows te va a ofrecer un par de alternativas y si es que estás con Linux también te va a ofrecer un par de alternativas en este caso Yo estoy con Mac Así que yo tengo que descargar esta Que dice Apple silicon Así que podemos pinchar acá en Download Y ahí se va a empezar a descargar nuestro ID ahora lo que nosotros también vamos a necesitar es el kit de desarrollo de Java
intellij idea viene con una herramienta que va a descargar el jdk por nosotros no es necesario que nosotros vayamos a la web de Java para poder descargarlo sin embargo yo te voy a mostrar igual cómo se descarga En caso que no te funcione con intellij idea Así que vamos a venir Acá y vamos a buscar jdk Download y una vez que nos encontremos acá esta opción por supuesto que no es la que tienen que Descargar tienen que venir aquí a donde dice dice Oracle porque Java ahora pertenece a Oracle Oracle compró Sun microsystem hace varios
años ya y luego de eso pueden pinchar acá donde dice Java for developers pinchan aquí y les debería Mostrar algo muy parecido a esto acá ustedes van a tener las distintas versiones de Java que se encuentran Disponible tenemos la 22 21 17 y así sucesivamente nosotros vamos a estar trabajando Siempre con la última así que puedes utilizar en este caso jdk 22 o la que te aparezca y después nosotros podemos bajar y seleccionar el sistema operativo que a nosotros nos interesa en mi caso es macos así que yo voy a pinchar acá y fíjate también
en esto acá tenemos distintas alternativas para poder instalar Java tenemos el archivo comprimido tenemos un dmg o también Tenemos un instalador en mi caso como yo tengo un chip Apple voy a seleccionar el instalador dmg pero con arquitectura arm64 y voy a pinchar acá para descargarlo en el caso que tú tengas Windows te puedes venir para acá y te va a indicar el instalador o el instalador msi utiliza cualquiera de estos dos la verdad es que yo he probado con este y este me funciona bien Así que si quieres tener exactamente la misma experiencia descarga
este una vez que lo hayas Descargado para instalarlo es sumamente fácil Sencillamente presionas siguiente siguiente siguiente luego De haberle dado dos clic al icono y eso te va a instalar tanto el jdk como también inj y luego de que hayas descargado e instalado estas dos aplicaciones podemos pasar al siguiente video ahora nosotros ya podemos proceder a crear nuestra primera Aplicación como puedes ver aquí yo ya abrí intellij y acá nos va a entregar unas cuantas Opciones la que nos interesa es esta que dice projects y acá vamos a pinchar inmediatamente New project Esto es para
poder crear un proyecto nuevo desde cero a la izquierda tenemos distintas opciones para nuestros proyectos vamos a dejar seleccionado Java y acá Nosotros le vamos a indicar un nombre a nuestra aplicación yo le voy a indicar de nombre app Java la verdad es que el nombre no es relevante tú le puedes colocar el nombre que tú quieras lo que sí tienes Que recordar Es que este nombre te va a aparecer de manera recurrente a a medida que nosotros estemos trabajando después de esto Nosotros le podemos indicar dónde queremos crear este proyecto a mí me lo
va a crear dentro de workspace si tú no quieres crearlo dentro del directorio que te está mostrando pinchas acá para ver la opción de browse y luego acá tú puedes seleccionar el directorio o carpeta que tú quieras donde quieras que se almacene el proyecto algo Importante nosotros vamos a crear un directorio o en verdad intellij va a crear un directorio con el nombre del proyecto Así que tú no deberías crear por ejemplo acá adentro un una nueva carpeta que se llame app Java no es necesario ya que lo va a hacer Intel JP t Así
que voy a cancelar después de esto tenemos el build System vamos a dejar intellij también existe la opción de maven gradle o gradle pero vamos a dejar intellij y esta era la parte que yo te Quería mencionar que te había dicho hace un par de videos nosotros no es necesario que descarguemos el jdk porque acá nosotros podríamos llegar a descargarlo y también Intel J se va a encargar de instalarlo por ti como puedes ver acá yo puedo seleccionar incluso hasta la versión suponiendo que Yo quiero la versión 18 selecciono acá 18 y acá puedo indicar
cuál es el fabricante que tiene esta versión del jdk aquí me está mostrando Amazon coreto Pero suponiendo que yo no quiero la de Amazon coreto sino que quiero una de Oracle en ese caso debería venirme acá Oracle en este caso me está indicando que la última versión que ellos tienen es la 22 y algo importante yo te había mencionado que Java fue creado por Sun microsystem sin embargo la empresa Oracle compró Sun microsystem hace ya muchos años después de eso Tú puedes pinchar acá en Select y el ide se va a encargar de descargar e
instalar el jdk Por ti sin embargo como nosotros ya lo descargamos y ya lo habíamos instalado no es necesario que nosotros lo seleccionemos desde acá Así que yo voy a dejar esta versión y luego voy a agregar aquí un add sample code o Agrégame un código de ejemplo y luego de eso también me puede indicar acá y me puede generar código con tips de onboarding yo este no lo voy a marcar voy a dejar solamente add sample code y luego de eso puedo pinchar acá en create y aquí ya me abrió Me lo abrió en
la otra ventana Así que voy a traerlo para acá y quiero que te fijes en lo siguiente esto es bastante parecido a otros editores de texto si es que ya has trabajado con otros Editores porque acá tú puedes ver a la izquierda que vas a tener la estructura de tu proyecto y a la derecha te va a aparecer el código que tú vas a poder editar tenemos un directorio que dice idea otro que dice src También tenemos un archivo que se llama git ignore y nosotros nos Vamos a venir acá derechito a este archivo que
se llama Main ahora nosotros podemos pinchar acá para poder ocultar la vista del proyecto y así podemos enfocarnos solamente en el código que nos está mostrando a mí me está mostrando el código colapsado si es que tú no quieres que se encuentre colapsado puedes pinchar aquí en esta flechita que aparece acá y esto te va a mostrar el código como de verdad fue escrito dentro del archivo yo te sugiero que lo dejes Así y que no pinches en este caret que se encuentra acá y ahora vamos a ver qué es lo que está ocurriendo acá
nosotros tenemos public Class Main public significa que es público O sea que otro archivo podría venir a utilizar esta clase vamos a ver esto más en profundidad por supuesto después nosotros tenemos public que puede ser utilizado afuera del contexto de esta clase vamos a verlo en profundidad más adelante y luego de eso nosotros tenemos Static static significa que este es un método de la clase y la clase en este caso es Main después tenemos void que lo vamos a ver más adelante y acá nosotros tenemos el nombre del método en este caso el método se
llama Main Y fíjate que tiene una m minúscula esa M minúscula es muy importante y después de eso nosotros tenemos acá dentro de unos paréntesis un String con los paréntesis de corchete seguido de la palabra arx voy a aprovechar de agrandar un poco la Letra perfecto ya se ve bastante mejor y ahora sí podemos continuar Entonces public lo vamos a ver después static significa que es un método de la clase void significa que no retorna nada lo vamos a ver más en profundidad y Main es el nombre del método de nuestra clase Main con m
mayúscula ahora todas estas cosas o palabras extrañas Recuerda que nosotros la vamos a ver más en detalle en un video posterior nosotros vamos a asumir que esto Sencillamente funciona Para que nosotros podamos empezar a construir aplicaciones pero todo esto lo vamos a ver con mayor detalle después ahora fíjate en esta línea que aparece acá tenemos algo que nos está diciendo system.out println después de eso tenemos un Abre paréntesis unas comillas dobles a continuación tenemos el texto de Hello World seguido de comillas dobles nuevamente cierra paréntesis y un punto y coma todo esto es la instrucción
que nos nosotros tenemos que escribir en El caso que queramos Mostrar algo en pantalla al usuario ahora lo que nosotros vamos a hacer es pinchar acá en este botón que nos dice Run Main Java como puedes ver el atajo de teclado aparece ahí y es control r para mi caso así que yo voy a presionar el atajo de teclado porque son más rápidos Tú también deberías preferirlas ver acá abajo como me está indicando build o que está construyendo nuestra aplicación y ahora podemos ver como me aparece acá el Texto de Hello World y ahora si
nosotros después queremos esconder esta ventanita que nos acaba de aparecer tú puedes venir acá y pinchas aquí donde aparece ese símbolo de menos en verdad quiere decir hide o ocultar Ahora sí podemos continuar cada vez que nosotros empecemos a escribir código de ahora en adelante por las siguientes secciones tenemos que hacerlo dentro de estos dos paréntesis de llaves estos paréntesis de llaves se les conoce también como un Block code o un código en bloque o bloque de código que es donde nosotros vamos a colocar todas las instrucciones que queramos que se ejecuten si por al
alguna razón dentro del código que tú estás escribiendo te llega a aparecer algo rojo Como por ejemplo acá significa que has hecho algo que ha roto tu código y tu aplicación no se va a ejecutar Así que si es que eso te llega a pasar empieza inmediatamente a presionar la tecla de control Z o Comando Z para que Ese error se vaya este error te podría aparecer Porque de repente te confundiste y eliminaste uno de estos paréntesis o porque tu código tiene una falta de ortografía por ejemplo acá nosotros tenemos este código que dice system.out
println podría ser que yo no lo escribí con out y le coloqué una l acá al final Entonces ahora me está mostrando aquí a la derecha una línea roja Recuerda si es que alguna de estas líneas rojas te llega a aparecer detente Inmediatamente y presiona control Z o Comando Z para que esa línea desaparezca ya que si no vas a empezar a acarrear problemas que te van a llevar a una situación donde podría ser muy difícil corregir tu código todos esos errores que vayan apareciendo yo Por supuesto que te los voy a ir explicando pero
por ahora lo que más me interesa es que escribamos nuestra primera aplicación y vamos a cambiar este texto que dice Hello World lo vamos a cambiar por Hola Mundo Luego de eso vamos a guardar para guardar puedes venir acá arriba te vas a file y luego pinchas acá donde dice save all como puedes ver el atajo de teclado es Comando s el tuyo seguramente va a ser control S Así que acuérdate de ese atajo de teclado presiónalo para que tu aplicación se guarde y luego vuelves a pinchar acá vas a ver cómo se vuelve a
construir tu aplicación y ahora nos está mostrando el texto de Hola mundo felicitaciones acabas de construir tu Primera aplicación ahora ya podemos continuar con nuestro siguiente video Oye Acércate hay algo que no te había dicho tenemos servidor de discord ve a conectarte en nuestro servidor de discord para que puedas compartir con otros estudiantes y otros desarrolladores te dejo el link con la invitación abajo en la descripción de este video Ahora sí continuemos en este video vamos a hablar sobre las variables y los tipos de datos Una variable se utiliza para poder almacenar algún tipo de
dato dentro de la memoria del computador puedes verlo como si este fuese una especie de caja esta caja va a tener un nombre por ejemplo va a tener el nombre de edad y si nosotros abrimos esta caja y vamos a ver su valor puede ser que nosotros encontremos algo Como por ejemplo 18 esta caja que va a contener algún valor es lo que se le llama variable nosotros utilizamos las variables en computación Para poder almacenar distintos tipos de datos nosotros podríamos querer almacenar números o también podríamos querer almacenar palabras Ahora cuando nosotros estamos programando nosotros
vamos a ver rara vez esto de números o palabras nosotros vamos a ver una decompos un poco más profunda de estos mismos dos tipos de datos supongamos que nosotros ahora queremos guardar números dentro de Java para poder guardar números nosotros podemos utilizar alguno De los siguientes tipos de datos el primero es int y quiere decir número entero o o sea un número sin decimales este podría ser el 1 el dos el TR Y así sucesivamente pero no podría ser por ejemplo el 2.2 además para nosotros poder guardar números También tenemos tipos de datos que se
llaman byte short y también long la principal diferencia entre Estos tipos de datos es qué número nosotros queremos guardar Por ejemplo si nosotros quisiéramos guardar un número Entre el -18 al 127 nosotros podríamos guardarlo dentro de byte ahora también nosotros lo podríamos guardar dentro de int dentro de short y también dentro de Long pero lo mejor es en este caso utilizar byte porque utiliza menos espacio en la memoria de nuestro computador específicamente el byte utiliza un byte También tenemos los short el short utiliza un espacio de 2 bytes y puedes guardar números desde el -
32,768 al 32,767 el int utiliza un espacio de 4 bytes y puedes guardar un número desde los menos 2000 millones de hecho voy a anotar acá solamente 2000 millones hasta más o menos también los 2000 millones y luego nosotros tenemos el long que utiliza 8 bytes que puedes guardar un número desde él voy a colocar acá nu seguido de 16 ceros entonces voy a colocar acá un cer0 y este cero vendría siendo el número 016 y va desde el negativo y por supuesto Que este también va a ir hasta la versión positiva de este número
que va a ser 9 seguido de 160 en Java es recomendado utilizar el tipo correcto de dato que tú vas a necesitar dependiendo de la variable que vas a crear Por ejemplo si vas a trabajar con la edad de los usuarios no tiene ningún sentido que utilices un número entero o un short o un long en ese caso lo mejor es que utilices un byte o si tienes que realizar operaciones Matemáticas donde El resultado va a ser demasiado grande en ese caso lo mejor podría ser utilizar un long dependiendo de Qué tan grande sea este
Pero te vas a dar cuenta que en el transcurso de este curso nosotros vamos a crear variables con bite short y también con int ahora esto vendría siendo para los números enteros entonces para números enteros tenemos int bite short y también Long y ahora qué pasaría si nosotros queremos almacenar números que estos contengan decimales Como por Ejemplo 1.5 kg Porque esa justamente es la receta de pan que vas a hacer entonces para números decimales puedes utilizar float o también Double además de esto tenemos los boolean y los boolean sirven para representar solamente dos valores vendrían
siendo verdadero o falso y estos pueden ser solamente lo siguiente pueden ser o true o pueden ser false no pueden ser absolutamente nada más y después nosotros tenemos el tipo de dato de char Que esto es para poder almacenar solamente un carácter por ejemplo Quiero almacenar el carácter a o Quiero almacenar el carácter F y a todos estos tipos de datos les llamamos tipos de dato primitivo ahora vamos a ver en el siguiente video Cómo podemos crear Estos tipos de datos aquí nos encontramos nuevamente dentro de intelij y para este video vamos a crear los
tipos de datos que vimos en nuestro video pasado lo primero Que haremos será crear un byte para eso tenemos que escribir la palabra de byte y voy a colocar acá que el nombre de esta variable se va a llamar edad y seguido de eso le voy a indicar el valor que este quiero que tenga yo le voy a indicar que va a ser el valor de 18 porque este va a representar 18 años y luego acá donde tenemos nuestro system.out println vamos a reemplazar este texto que aparece acá en el centro Lo vamos a eliminar
tenemos que eliminar También las comillas dobles y acá podemos colocar edad ahora vamos a utilizar nuestro atajo de teclado para guardar y vamos a pinchar acá para poder ejecutar nuestra aplicación y una vez que este haya compilado y se haya ejecutado podemos ver que aquí aparece el valor de 18 Esto es lo que nosotros estamos buscando ahora vamos a intentar crear otro valor pero en lugar de ser un byte este va a ser un int Así que yo voy a colocar aquí el texto de int y seguido De eso voy a colocar por ejemplo número
grande y este va a ser igual al 1000 y finalizamos con un punto y coma fíjate muy bien como yo estoy escribiendo los nombres de las variables aquí Tú puedes ver que yo tengo primero el tipo de dato que estoy creando que en este caso es byte o también en int pero más a la derecha nosotros le estamos asignando el nombre a esta variable este nombre es el valor que nosotros vamos a utilizar más abajo en nuestro código para poder Referirnos a estos 18 años vamos a utilizar siempre el valor de edad después más abajo
tenemos otra variable que se llama número grande pero fíjate en Cómo la escribí la escribí con la primera letra en minúscula y seguido de la siguiente palabra que estoy utilizando dentro de mi nombre de variable con la g mayúscula nosotros ya vimos esto en un video pasado y esto se llama camel Case después de esto Nosotros le podemos indicar el valor que Queremos que este tenga y finalmente lo vamos a imprimir acá donde dice edad Así que vamos ahora a reemplazar edad por número grande vamos a guardar y volvemos a ejecutar nuestra aplicación y como
podemos ver aquí nosotros también tenemos el valor de 1000 y ahora algo importante nosotros perfectamente podríamos tomar un valor Como por ejemplo el de 1000 y asignárseles yo voy a colocar acá por ejemplo 15 Y en lugar de Asignárseles y lo voy a cambiar por edad Esto va a seguir funcionando pero el problema que esto va a tener Es que este tipo de dato que se llama long lo que va a hacer es ocupar más espacio en la memoria RAM de los computadores por eso es mejor que si nosotros vamos a tener un número pequeñito
que utilicemos el tipo de dato ya sea byte o de pronto también podría podríamos utilizar short sin embargo si nosotros creamos un tipo de variable con int tampoco Esto va a Ser tan terrible a medida que nosotros vamos aprendiendo Java sin embargo Quiero que sepas que cuando tú quieres ir optimizando tu aplicación lo mejor es que utilices el tipo de dato que corresponde pero ahora en estas primeras secciones que nosotros estamos aprendiendo no va a ser raro que tú me veas a mí declarando estas variables como int ahora vamos a ver cómo podemos declarar variables
pero de punto flotante esto quiere decir decimales Vamos a decir que ahora nos nosotros nuestra edad la vamos a almacenar con decimales Por ejemplo si nosotros tenemos 15 años y 6 meses queremos guardarlo como 15.5 sin embargo como puedes ver aquí Java me está indicando un error si nosotros colocamos el mouse encima me está indicando que el tipo requerido es int sin embargo el tipo que nosotros le estamos asignando es el de Double ahora acá dice Double pero perfectamente este También podría ser float sin embargo si yo le coloco el tipo de dato float Este
me está molestando me está indicando que tengo un error nosotros podemos ver este error por la línea roja que me está mostrando acá abajo también por esta pequeña ampolleta que aparece a la izquierda y también si nosotros nos venimos acá a la derecha vamos a ver que justamente acá también tenemos una línea roja que me está marcando el error Entonces por qué me está marcando esto Porque cuando nosotros queremos utilizar variables de tipo punto flotante tenemos que colocar justamente al final de la declaración de este número la letra f nosotros podemos hacerlo con una f
minúscula o o también lo podemos hacer con una F mayúscula para ambos casos nos va a funcionar bien Ahora si nosotros guardamos y volvemos a ejecutar nuestra aplicación vamos a ver que ahora me está mostrando el valor de 15.5 pero fíjate también en esto me está Indicando acá contexto subrayado en verde algo voy a colocar el mouse encima y como puedes ver aquí me está indicando typo in Word edad esto quiere decir que intelij piensa que yo he cometido una falta de ortografía si nosotros no queremos ver este tipo de errores tenemos que cambiar el
nombre de la variable por su nombre en inglés Así que yo lo que voy a hacer es que lo voy a cambiar por h y como puedes ver ahora este error de la línea verde subrayando Se ha ido y Qué pasaría si nosotros ahora ya no queremos guardar un float sino que queremos guardar un Double en ese caso podemos venir acá al tipo de la variable Y en lugar de yo colocarle float le voy a colocar Double voy a guardar y mi aplicación debería seguir funcionando Así que vuelvo a pinchar acá para ejecutar Mi código
y vemos que se sigue mostrando con éxito acá abajo a la izquierda entonces volviendo lo de antes nosotros podemos declarar los números Con int también con short también con Long y también con byte voy aprovechar Eso sí de eliminarle la f de acá y en el caso con las variables de punto flotante nosotros podemos utilizar Double o también podríamos utilizar float sin embargo cuando nosotros hagamos eso tenemos que acordarnos de colocar una F justamente al final del número para que así Nosotros le podamos asignar su valor decimal ahora vamos a ver nosotros Cómo podemos declarar
un bullan para eso Nosotros tenemos que escribir acá bullan y luego de eso indicamos el valor que nosotros queremos almacenar como por ejemplo si un usuario se encuentra activo o no Yo lo voy a anotar en inglés Así que se va a llamar is active y Esto va a ser igual a true acá nosotros vemos que le estamos pasando el valor de true nosotros no podemos tener faltas de ortografía ni tampoco le podemos pasar este valor dentro de comillas porque si no me va a arrojar un error tenemos que Anotarlo siempre sin las comillas y
todo en minúscula También nosotros le podríamos pasar el valor de false esos son los únicos dos valores que tú le puedes pasar ya sea true o false y ahora vamos a ver el último tipo de dato que nosotros vimos en el video pasado y ese es el de char y char quiere decir que vamos a almacenar un carácter vamos a decir que nosotros estamos en un colegio y este colegio tiene muchos cursos por ejemplo podría ser el a b c o d o como Sea que le digan en tu país o en tu ciudad pero
yo le voy a indicar que este va a ser curso y va a tener el carácter de a pero me está indicando un error acá nosotros vemos Que está indicando esto con el texto subrayado en rojo que contiene un ror si nosotros colocamos el mouse acá encima me va a indicar que yo le estoy entregando un String Entonces por qué me está arrojando este error porque cuando nosotros queremos declarar caracteres en Java no podemos utilizar Las comillas dobles tenemos que utilizar Sí o sí las comillas simples y después de esto yo le puedo pasar el
carácter que me interesa asignarle que en este caso es el de a mayúscula después de esto podemos escribir nuevamente system.out println para poder imprimir nuestras variables pero yo te voy a mostrar un atajo s o ut y vas a presionar enter y acá ves que tenemos nuevamente el texto de system.out println esto que yo acabo de hacer se Llama snippet y nos sirve para nosotros poder escribir más código utilizando solamente unos pocos caracteres y este es una funcionalidad que viene incluida dentro de intellij ahora para yo poder imprimir estas variables voy a colocar acá is
active Y si yo quisiera imprimir otra variable en ese caso tengo que venirme acá a una nueva línea vuelvo a escribir s presiono enter y le paso acá mi variable de curso ahora voy a guardar con mi atajo de teclado y antes de Continuar ejecutando acá voy a ver cóm yo puedo ejecutar Mi código utilizando el atajo de teclado y acá me está indicando que es con el atajo de teclado de control r Así que voy a presionar la combinación de teclas control y r vemos como el código se ha compilado de nuevo y ahora
si es que subo un poquito acá vamos a ver que tenemos los valores de 15.5 que vendría siendo la edad después tenemos false que es is active y después de eso nosotros tenemos a que vendría Siendo el carácter de curso en el video pasado vimos los tipos primitivos ahora tenemos que empezar a ver los tipos de referencia los tipos de referencia son absolutamente todos los tipos de datos que no vimos en nuestro video anterior existen solamente ocho tipos de datos primitivos todo el resto son por referencia y vamos a comenzar con el más importante y
es el de String String nos sirve para que nosotros podamos crear texto dentro de nuestras Aplicaciones y para nosotros poder crear un tipo de datos String basta con que nosotros escribamos String seguido de eso le vamos a indicar un texto yo voy a indicar que se va a llamar text y después le tenemos que indicar de la siguiente manera que vamos a crear un nuevo String escribimos la palabra reservada de New y a continuación escribimos String abrimos y cerramos paréntesis redondos y colocamos unas comillas doble dentro de esta esto nos Va a servir para nosotros
poder crear nuestro String y acá yo le voy a indicar mi texto de Hola mundo y le voy a colocar un símbolo de exclamación sin embargo Java me va a empezar a mostrar un error acá y esto es porque el texto de New String es redundante Qué quiere decir esto Java como nosotros vamos a tener que crear tantos strings de manera muy repetitiva dentro de nuestras aplicaciones nos entrega una forma más corta de poder crear estos strings no es Necesario que Nosotros escribamos todo esto basta con que Sencillamente coloquemos las comillas dobles al comienzo y
después al final de esta manera nosotros podemos eliminar los paréntesis redondos también el texto de New y también el de String de esta manera como nosotros creamos un String dentro de Java le indicamos el tipo de String después de eso le indicamos el nombre que va a tener la variable que en este caso es text y luego de eso Nosotros le indicamos el valor que nosotros queremos que este tenga a este tipo de String cuando nosotros no estamos utilizando New String Nosotros le llamamos un String literal y el String literal es el que nosotros vamos
a utilizar en su mayoría ahora cuál es la gracia de los String literales es que estos cuentan con varios métodos que nosotros podemos utilizar los cuales van a ser bastante útiles Al momento de estar trabajando con estos te acabo de Decir métodos esa es una palabra que no conoces pero por ahora piensa lo que es una acción que puedes realizar sobre el texto en este caso sobre los strings para poder trabajar con ellos los vamos a ver en mucha mayor profundidad más adelante Pero esto es importante que los empecemos a ver ahora para que podamos
empezar a construir nuestras aplicaciones y el primer método que nosotros vamos a ver dentro de los strings se llama leng para nosotros Poder llamar los métodos que contiene un String en este caso el de texto lo que vamos a hacer es escribir el nombre de la variable que en este caso es text y seguido de eso nosotros vamos a presionar la tecla de Punto y esto lo que va a hacer es mostrarnos todo este menú que tú puedes ver ahora contiene el texto de replace length thm contains y muchos otros métodos más que vamos a
ir viendo por lo menos los más importantes vamos a comenzar con este de length Así Que lo vamos a seleccionar con el mouse también lo podemos hacer con las flechas de arriba hacia abajo y luego presionamos enter o la tecla de Tab y ahora intellij va a completar todo el texto por nosotros ahora lo que podemos hacer es colocar el punto y coma para cerrar nuestra línea y ahora tenemos que asignar el valor que retorna este método a una variable como Nosotros sabemos Qué tipo de dato me devuelve nosotros podemos colocar el mouse encima acá
de Length y nosotros vamos a ver aquí justamente acá que aparece el texto de public int length con ese texto de int Nosotros sabemos que nos va a devolver un número entero y si es que por alguna razón nos confundimos y no sabemos Qué tipo de dato es o Sencillamente el tipo de datos no nos aparece ahí lo que nosotros podemos hacer es derechamente comenzar a escribir otro tipo de dato Por ejemplo yo voy a colocar acá byte y luego voy a escribir el texto de largo Que va a ser el nombre de mi variable
y luego vuelvo a colocar el mouse acá encima y me está indicando que el tipo requerido es byte pero sin embargo el método me está devolviendo int Así que ahora podemos devolvernos aquí a la definición del tipo Y en lugar de byte yo le voy a colocar int y ahora sí yo puedo guardar y ahora puedo imprimir este valor para eso vamos a utilizar nuestro snippet de sou presionamos enter y luego le le pasamos nuestra variable De largo y ahora vamos a ejecutarlo con nuestro Tajo de teclado que es control r en mi caso y
acá nosotros podemos ver que nos está devolviendo el valor de 11 ahora el largo Por supuesto que no es el único método que nosotros vamos a utilizar vamos a utilizar muchos más así que vamos a empezar a repasarlos inmediatamente el siguiente método que nosotros vamos a ver es el de replace y nos va a permitir a nosotros poder seleccionar una parte de este texto que Nosotros hemos definido acá y reemplazarlo por otro por ejemplo yo lo que lo que voy a hacer es tomar este texto de Hola y lo voy a reemplazar por chao Entonces
vamos a crear un nuevo String que se va a llamar texto y este se va a crear a partir de text replace y acá yo le tengo que indicar qué es lo que quiero reemplazar Entonces le voy a pasar acá el texto de Hola Fíjate que estoy utilizando las comillas dobles y después de esto le tengo que indicar Qué Texto le quiero asignar a esto que dice acá Hola Para yo poder agregar otro argumento lo que tengo que hacer es separarlo por una coma y después de eso puedo volver a pasarle otro String que en
este caso le voy a pasar el texto de chao también te acabo de decir otra palabra que no conocías que es la de argumento en programación existe un concepto cuando nosotros estamos Llamando a estos métodos que se llaman argumentos y parámetros muchos Desarrolladores no conocen la diferencia entre argumentos y parámetros pero por ahora lo que tienes que saber es que estos valores que nosotros le estamos pasando acá este texto o estos String literales para llamarlos de manera más correcta se les conoce como argumentos Entonces todos los métodos que nosotros vamos a llamar de ahora en
adelante los valores que le vamos a pasar yo me voy a referir a ellos como argumentos ahora lo que podemos hacer es llamar nuevamente a Nuestro print Ln utilizando nuestro snippet de s y le voy a pasar como argumento texto ahora voy a guardar y voy a volver a ejecutar Mi código con mi atajo de teclado ahora podemos ver que me está devolviendo el texto de chao mundo ya no me devuelve Hola mundo sino que me devuelve chao mundo pero también vamos a aprovechar de ver algo importante que tienen los strings dentro de su comportamiento
como puedes ver acá yo lo que estoy haciendo es crear una Nueva variable que se llama texto y esta yo la estoy creando a partir de la variable que se llama text como puedes ver text la estoy creando en la línea tres y texto la estoy creando en la línea ocho texto contiene un cambio el cual es ya no está mostrando Hola sino que ahora está mostrando chao Por ende no dice hola mundo sino que dice chao mundo ahora vamos a imprimir en lugar de texto vamos a imprimir text para ver qué es lo que
nos muestra yo ya sé lo que me Va a mostrar pero quiero que tú lo veas me está mostrando el texto de Hola mundo por qué me está mostrando el texto de Hola mundo si yo se lo acabo de cambiar por chao mundo y la razón de esto es porque los strings son inmutables lo voy a escribir acá inmuta bles lo que quiere decir que cualquier método que nosotros llamemos de un String este lo que va a hacer es crear un nuevo String y devolvérmelo para que nosotros lo podamos asignar a Una variable tal cual
como tú lo estás viendo acá Qué significa esto significa que texto y text son strings completamente distintos en videos posteriores te voy a explicar por qué ahora lo que yo voy a hacer es continuar con los siguientes métodos que son bastante útiles pero voy a optar por un pequeño hack yo en lugar de llamar a los métodos y asignárseles inmediatamente a una variable lo que voy a hacer es Llamar a estos métodos dentro de mi Método de system.out println acá yo lo que voy a hacer es llamar nuevamente a texto pero ahora voy a presionar
punto para ver qué otros métodos me ofrece El que me interesa en este momento es el de ends with este método lo que va a hacer es devolverme true o false dependiendo de si mi String termina con lo que yo le voy a indicar acá Entonces yo le voy a pasar un String literal y le voy a indicar si es que este String termina con undo y el símbolo de exclamación Porque si mal no recuerdo nosotros creamos este String con un símbolo de exclamación al final si te muestra esta Línea Amarilla es porque intellij ya
conoce el resultado Ahora yo lo que voy a hacer es guardar y voy a ejecutar Mi código como puedes ver me está devolviendo el valor de true Pero si yo llegase a modificar esto y le quito por ejemplo el símbolo de exclamación y vuelvo a ejecutar vamos a ver que ahora me está devolviendo el valor de falso Como existe el método de ends with también existe el método de starts with Así que vamos a escribir acá starts with y yo en lugar de pasarle undo le voy a pasar ch vamos a guardar y vamos a
volver a ejecutar el código y como puedes ver ahora me está devolviendo el valor de true ahora vamos a llamar a otro método bastante útil el cual se llama contains y este nos va a servir para nosotros saber si es que nuestro String contiene o no contiene una cadena De texto en específico Por ejemplo yo quiero saber si mi cadena de texto contiene und que se encuentra de dentro de mundo vamos a guardar y vamos a ejecutar nuestro código y podemos ver que ahora me está devolviendo el valor de true y ahora vamos a suponer
lo siguiente yo no quiero saber si es que el valor existe yo quiero que me diga dónde se encuentra dentro de mi texto para eso vamos a volver a llamar a print Ln y vamos a llamar a texto indexof este Lo que va a hacer es devolverme el índice de dónde se encuentra esta cadena de texto acá yo le puedo pasar solamente un carácter o también le puedo pasar un String que en este caso es mund Fíjate que no le estoy pasando mundo le estoy pasando solamente m n d vamos a guardar y vamos a
refrescar y ahora me está devolviendo cinco Qué quiere decir esto vamos arriba y vamos a venir acá a nuestro texto de Hola mundo voy a cambiar esto por chavo porque más Adelante lo estoy cambiando por chao y vamos a empezar a contar 0 1 2 3 4 y 5 Entonces el texto de m n d se encuentra a partir del índice 5 de mi texto de text ahora voy a deshacer los cambios y voy a volver a bajar vamos a ver ahora otros dos métodos y antes de pasar a ver los siguientes métodos esto ocurre
porque Java comienza los índices desde el número cero no lo hace desde el número uno ahora vamos a pasar a ver los siguientes métodos que son los de tu Uppercase este lo que va a hacer es tomar mi texto y lo va a pasar todo a mayúsculas como puedes ver acá y el siguiente es el de texto to lowercase y este lo que va a hacer es tomar absolutamente todo el texto y y lo va a pasar a minúscula como puedes ver aquí que me está mostrando chavo mundo pero la c y la m la
tiene con minúsculas y además vamos a ver otro método que es sumamente útil el cual es el método trim trim nos va a servir para poder eliminar Los espacios que se encuentran al comienzo y al final de un String Entonces vamos a crear otro String que se va a llamar malo porque este es un String malo lo ingresó el usuario así que nosotros tenemos que presumir que este es un String malo y vamos a indicar que se va a llamar Chanchito feliz y le vamos a colocar un par de espacios al comienzo y al final
y esto es porque existen muchos usuarios que te empiezan a ingresar por ejemplo dentro del nombre O dentro del apellido te empiezan a colocar un par de espacios entonces para poder solucionar ese error lo que vamos a hacer es Llamar a malo y a este le vamos a llamar a su método de trim ahora si es que nosotros guardamos y ejecutamos nuestro código vamos a ver como aquí aparece Chanchito feliz pero no se encuentran los espacios de al comienzo ni de al final y para poder de mostrarte esto vamos a volver a llamar a print
Ln pero le vamos a pasar malo Ahora pero sin haber ejecutado trm volvemos a ejecutar nuestro código y acá nosotros podemos ver como me está mostrando Chanchito feliz sin los espacios del comienzo y del final y después me vuelve a mostrar Chanchito feliz pero con los espacios de al comienzo Y también si nosotros seleccionamos esto deberíamos ver también los espacios de al final y esto es todo lo que necesitas saber de los strings por ahora vamos a continuar con El siguiente video en este video Vamos a continuar viendo las secuencias de escape Vamos a continuar
con el siguiente código de ejemplo acá nosotros tenemos una variable de String que se llama texto y esta almacen el Stream que dice Hola mundo también lo que estamos haciendo es imprimirlo dentro de nuestra consola si nosotros lo ejecutamos vamos a ver como este nos va a mostrar el texto de Hola mundo así que hasta acá no tenemos Absolutamente ninguna magia qué es lo que pasaría si nosotros quisiéramos envolver por ejemplo el String de mundo dentro de comillas dobles tal cual como yo lo estoy ha Endo acá Java me va a empezar a mostrar un
error y el error la verdad es que es bastante razonable porque Java va a pensar que nosotros estamos cerrando el String de Hola aquí y todo el resto que se encuentra acá a la derecha no vendría siendo código Java válido así que qué es lo que nosotros Podemos hacer para aún así envolver el String de mundo dentro de las comillas dobles acá es cuando nosotros tenemos que hacer uso de los caracteres de escape entonces para nosotros poder entre comillas escapar un carácter lo que vamos a tener que hacer ahora es colocar justamente antes de las
comillas dobles el backslash vamos a colocar acá un backslash y vamos a hacer exactamente lo mismo justamente antes de las comillas dobles las penúltimas comillas Dobles Ahora sí vamos a guardar y vamos a ejecutar nuestro código y vamos a ver ahora cómo me está mostrando el texto de mundo dentro de estas mismas comillas dobles vamos a cerrar acá y ahora vamos a suponer lo siguiente que es lo que pasaría si nosotros queremos Mostrar por ejemplo algún directorio en particular sobre todo uno de Windows que debería ser c dos punos backslash y una siguiente cantidad de
caracteres en ese caso lo que nosotros podemos hacer es Utilizar nuevamente el backslash Así que yo lo que voy a hacer acá es colocar c do punos backslash Pero mira acá me está intentando escapar el carácter H mayúscula ese yo no es el que quiero escapar yo el que quiero escapar es el carácter de backslash y ahora incluso puedo terminar de cerrar esta ruta de Windows colocando el símbolo mayor que vamos a guardar y vamos a volver a ejecutar y acá nosotros podemos ver cómo me está mostrando la ruta de C2 punos Barra hacia atrás
H la mundo y el símbolo de mayor que ya sabemos cómo escapar las comillas dobles y también sabemos cómo escapar el backslash ahora vamos a ver cómo podemos también utilizar unos caracteres especiales para darle un formato diferente a nuestros strings yo lo que voy a hacer es Eliminar todo lo que nosotros hemos construido hasta ahora voy a dejar solamente el String de Hola mundo voy a guardar Y ahora qué es lo que pasaría si Yo quiero colocar la palabra de mundo en una nueva línea en este caso puedo utilizar nuevamente el backslash pero ahora yo
le voy a pasar la n minúscula voy a guardar y voy a volver a ejecutar el código y mira ahora me está mostrando acá el texto de mundo Pero si yo deslizo un poquito hacia arriba voy a ver el texto de ola y este debería también tener el espacio en blanco justamente acá a la derecha Por ende este Back n lo que va a hacer es tomar todo el texto Que se encuentra a la derecha de este y lo va a llevar a una nueva línea sin embargo podría ser que yo yo no quiera colocar
todo o el siguiente texto dentro de una nueva línea que es lo que pasaría si yo quiero agregar una tabulación Como por ejemplo eso en este caso lo que nosotros podemos hacer es utilizar el backslash para poder agregar una tabulación dentro de nuestro texto vamos a guardar y vamos a volver a ejecutar nuestro código y como podemos ver ahora Me está mostrando el texto de Hola mundo pero justamente aquí entre medio nosotros tenemos una tabulación Ahora sí pasemos al siguiente video en este video vamos a hablar sobre los arrays un array es un tipo de
dato que te permite a ti poder almacenar o guardar muchos elementos del mismo tipo de dato dentro de una variable te voy a mostrar Cómo se hace lo primero que nosotros tenemos que hacer es indicar Qué tipo de dato es el que nosotros Queremos guardar dentro de la ar reay Así que acá yo le voy a indicar que quiero almacenar números enteros para indicar que este va a ser una Rey lo que tengo que hacer es agregar el paréntesis cuadrado Porque si nosotros no agregamos el paréntesis cuadrado pareciera que nosotros estamos declarando un número entero
Así que acá colocamos los paréntesis cuadrados después de esto tenemos que indicar el nombre que va a tener la variable acá yo voy a colocar Números Fíjate que lo estoy haciendo en plural porque voy a almacenar más de un solo número dentro de esta variable y después de esto podemos utilizar nuestro símbolo de igualdad y vamos a crear ahora nuestro arrey para nosotros poder crear un arrey en Java vamos a tener que utilizar la palabra reservada de New si nosotros no la utilizamos vamos a tener un error Así que vamos a agregarla después de esto
le tenemos que indicar Cuál es el rey que nosotros vamos a Crear yo voy a indicar que va a ser una rey de números enteros y además de esto tengo que indicarle la longitud de elementos que este va a tener y lo tengo que hacer Dentro de este paréntesis cuadrados entonces acá yo le voy a indicar Cuántos elementos quiero que este tenga cuando nosotros creemos una ar Rey nosotros deberíamos ver algo muy similar a esto por ejemplo este va a tener números del 0 al cuatro deberíamos ver algo con 0 1 2 3 y cu
en este caso Este arrey es de longitud cinco Porque contiene cinco elementos tiene acá 1 2 3 cu Y cco entonces le vamos a indicar acá que vamos a crear un array de longitud cco ahora lo que vamos a hacer es Mostrar el contenido de este array nosotros en este momento no le hemos asignado absolutamente nada así que deberíamos ver un array que se encuentre inicializado por defecto Java te inicializa los arrays de tipo número en cero si este no fuese de tipo entero de Tipo número y fuese por ejemplo de String o de charge
en el caso de strings te lo va a inicializar con un String vacío y en el caso de una rey de booleans te lo va a iniciar con booleans falsos todos absolutamente falsos Así que lo que vamos a hacer ahora es imprimir nuestros números me está indicando una alerta acá pero ya vamos a ir a esta ahora vamos a ejecutar nuestra aplicación y mira lo que me está mostrando me está mostrando en este caso Una dirección en memoria nosotros vamos a hablar de esto en un video posterior de Por qué nos está mostrando esto en
lugar del contenido de la r pero por ahora para que nosotros podamos ver el contenido real de nuestro array lo que vamos a tener que hacer ahora es utilizar una clase especial que se encuentra dentro de Java si nosotros venimos acá al comienzo de la línea uno vamos a ver que tenemos nuestra clase Main nosotros ya hablamos de las clases En unos videos pasados así que ahora nosotros lo que vamos a hacer es utilizar una clase más adelante vamos a ver cómo crearlas por ahora vamos a ver cómo las podemos utilizar entonces para yo poder
utilizar la clase basta con que Sencillamente empiece a escribir su nombre el nombre de la clase que me interesa en este en este caso se llama array Con la s final Esta es en plural Por qué Porque si yo lo escribo con array en singular no me va a funcionar Porque esta es otra clase así que tenemos que hacerlo con la s final Ahora yo lo que voy a hacer es seleccionar el primer elemento o también puedo presionar enter Y esto es lo que hará será agregarme esta línea de import en la línea número uno
Esta es la gracia también que tiene Java nosotros podemos utilizar clases que se encuentran en otras partes No necesariamente dentro de nuestra aplicación sino que en este caso se encuentra dentro del mismo Java y Este nos va a entregar más funcionalidades como por ejemplo la que nosotros vamos a ver ahora yo lo que voy a hacer ahora es eliminar el nombre de la variable de arrays o el nombre de la clase de arris en verdad y ahora voy a venir acá donde está números voy a recortar esto y voy a escribir arris punto to String
voy a presionar enter y ahora a este método yo le voy a pasar mi arrey de números vamos a guardar y vamos a ejecutar nuestro código y mira ahora Nosotros podemos ver nuestro array que ha sido inicializado solamente con los valores de cero ahora cómo nosotros podemos empezar a irle agregando valores a este array nosotros lo podemos hacer primero haciendo referencia a nuestro array que en este caso es el de números seguido de eso con los paréntesis cuadrados le tenemos que indicar cuál es el elemento al que nosotros le queremos asignar un número por ejemplo
yo quiero asignarle un valor al primer elemento Este que se encuentra acá para yo poder cambiar ese valor tengo que utilizar el cero pero no porque yo esté indicándole el número C el valor de acá no sino porque los arrays en programación y en computación en general comienzan desde el cero por ejemplo acá nosotros vamos a tener el elemento de índice cer0 después tenemos el elemento de índice uno y así sucesivamente hasta que llegamos al último elemento Y en este caso vendría siendo el elemento de índice cuatro Entonces acá Nosotros le colocamos el número cer0
después de eso yo le voy a indicar que quiero que tenga el valor de cco colocamos un punto y coma guardamos y volvemos a ejecutar nuestra aplicación y mira ahora hemos reemplazado el primer elemento con el número cinco vamos a suponer ahora que yo quiero reemplazar otro número de este array así que volvemos a llamar a esto y le voy a indicar que quiero reemplazar el quinto elemento recuerda yo le estoy diciendo Quinto elemento pero en verdad es el elemento de índice cuatro que da la coincidencia que es el quinto elemento y ahora Nosotros le
vamos a indicar acá el valor de siete volvemos a guardar volvemos a ejecutar y ahora nosotros deberíamos ver el primer elemento con el valor de cinco y el último elemento con el valor de siete y ahora con cosas importantes que tú tienes que saber sobre los arrays la dimensión que tienen estos es fija lo que quiere decir que tú No puedes ir agregando o eliminando elementos de los arrays si quieres agregar elementos a un array vas a tener que trabajar con colecciones Pero eso nosotros lo vamos a ver bien avanzado en el curso por ahora
nos vamos a quedar con los arrays aún lo siguiente que tienes que saber es que también los arrays contienen una propiedad que se llama length vamos a volver a utilizar nuestro snippet de s y acá vamos a escribir números punto ya aquí Tú puedes Ver los métodos y también las propiedades que tiene nuestro arrey de números cuando es una propiedad tú vas a ver que no tiene estos paréntesis acá la derecha como si lo tiene por ejemplo clone esto quiere decir que te va a devolver un valor Así que yo voy a seleccionar length voy
a guardar y voy a volver a ejecutar y este como puedes haber presumido me va a devolver la longitud de la Rey o la cantidad de elementos que este puede almacenar que En este caso como puedes ver acá nos permite almacenar cinco elementos además de esto nosotros podemos también ordenar lo los arrays Para yo poder ordenar un array lo que tengo que hacer es llamar nuevamente a mi clase de arrays Así que acá yo llamo arrays punto sort y mira como puedes ver aquí yo le puedo pasar números enteros byte char long float short Double
Y así sucesivamente si nosotros vamos bajando podemos ver todos los tipos de datos que nosotros le Podemos pasar a este método pero el que a nosotros nos interesa es el de poder pasarle números enteros Así que acá yo le voy a pasar números y después de esto vamos a volver a imprimir los do números vamos a guardar y volvemos a ejecutar nuestra aplicación y mira aquí me volvió a mostrar el espacio en memoria lo que voy a hacer es cambiar esto a arrays t String y números como puedes ver aquí si es que yo coloco
el mouse encima vamos a ver como intellij me está sugiriendo Cambiarlo por esta expresión Así que yo lo que voy a hacer Es que voy a pinchar acá y como puedes ver ya me ha cambiado la expresión completa por cierto yo dije expresión y expresión significa una línea de código que te devuelve un valor así que vamos a guardar volvemos a ejecutar y mira aquí nosotros ahora tenemos los valores de 00 5 y 7 nuestro arrey Está ordenado también algo importante que lo más probable es que te hayas dado cuenta en videos pasados Cuando nosotros
estábamos trabajando con strings nosotros teníamos que crear necesariamente una nueva variable de strings para que almacenara el resultado de los números ordenados o en este caso de los strings ordenados para el caso de los array no es necesario cuando Nosotros llamamos a este método de sort este se va a encargar de Ordenar el mismo arrey que nosotros le estamos pasando si es que no fuese así deberíamos crear un nuevo ary de números Enteros que por ejemplo se va a llamar x Este es un pésimo nombre pero vamos a suponer que se va a llamar x
y así nosotros podríamos capturar el valor Pero esto es el caso solamente para los strings porque como puedes ver tú acá en Java si nosotros colocamos el mouse acá encima Primero me está indicando un error y segundo el error me está indicando que yo estoy definiendo un array de twip potero Sin embargo el método sort de la clase de arace De Hecho voy a aprovechar de anotarlo acá el método de sort de la clase de arris me está devolviendo void qu quiere decir no me está devolviendo absolutamente nada así que esto de acá no nos
sirve podemos eliminarlo y ahora vamos a simplificar un poco más la creación de los arrays porque en Java afortunadamente nosotros tenemos una nueva forma para poder crear arris Y es que en lugar de nosotros escribir absolutamente todo esto podemos Sencillamente eliminarlo y acá utilizar los paréntesis de llaves dentro de estos paréntesis de llaves Nosotros le podemos indicar los elementos que queremos que este arrey tenga por ejemplo yo le voy a indicar el C el 1 el 2 el 3 y el cuatro y ahora si nosotros guardamos y volvemos a ejecutar nuestra aplicación vamos a ver
como acá abajo me está mostrando 1 2 3 y el cuatro y el cco no me los está mostrando porque el valor de 4atro fue reemplazado después aquí por el número Siete y el primer elemento fue reemplazado por cinco por eso nosotros estamos viendo 1 2 3 5 y 7 y ya por último antes de terminar este video qué es lo que pasaría si nosotros quisiéramos agregar un elemento Dentro de este arrey pero que no se encuentra definido dentro de sus índices por ejemplo nosotros acá tenemos un arrey de longitud 5 que es lo que
pasa si queremos agregar un elemento en el índice si y le voy a pasar el valor de 10 vamos a ver qué es lo que ocurre aquí Java Ya se está empezando a quejar me está subrayando esto en amarillo y es porque el índice se encuentra fuera de los límites pero vamos a ejecutarlo de todas maneras para que veamos qué es lo que ocurre y mira aquí arriba podemos ver un texto en rojo y me está indicando exception y exception es la forma que tiene Java para poder indicarnos que ha ocurrido un error dentro de
nuestra aplicación y esto es todo lo que Necesitas saber sobre los arrays ahora podemos continuar con el siguiente video en este video vamos a ver los arrays de múltiples dimensiones acá yo he simplificado un poco el código de la lección pasada acá yo tengo declarado mi array que se llama números este contiene solamente números enteros y va del c0 al cuatro y luego lo que está est haciendo es imprimirlo como puedes ver acá abajo Yo ya me tomé la libertad de imprimirlo ahora qué es lo que pasaría si yo quiero Agregarle otra dimensión más a
estos ar reí yo lo que voy a hacer eso sí es simplificar esto un poco voy a eliminar del dos al cuatro para que sea todavía más fácil entonces lo que nosotros tenemos ahora es una rey que contiene solamente dos elementos el cer y el uno Si volvemos a ejecutar Esto me muestra c y uno si yo quiero volver a agregar otro array que por ejemplo podría ser una matriz donde vamos a tener filas Y también vamos a tener columnas lo que Tengo que hacer es volver a utilizar esta misma sintaxis de los paréntesis de
llaves acá adentro entonces lo que voy a hacer es colocar acá nuevamente una rey que este va a contener los valores de 0 y 1 y luego de eso lo que tengo que hacer es exactamente lo mismo con el siguiente elemento pero acá yo le voy a aprovechar de pasar los valores de 2s y TR acá me está indicando un error porque tengo que también indicarle acá en la mano izquierda que este va a ser un Array de arrays perfecto y ahora ahora nosotros podemos guardar sin embargo si yo ejecuto mi código nosotros no vamos
a ver esto lo que vamos a ver es una reay que contiene prácticamente los bloques de memoria de donde se está guardando esto así que para poder cambiar esto vamos a tener que utilizar otro método que se encuentra dentro de nuestra clase de arrays que esta se llama Deep to String este que aparece acá Ahora sí nosotros podemos guardar voy a volver a Ejecutar Mi código y acá nosotros podemos ver de manera correcta ya como nos está mostrando una rey que tiene dos arrays Dentro de este Y ahora qué pasaría si yo no conozco todos
los elementos que van a tener todos estos arrays O solamente voy a conocer la longitud de esto en este caso lo que nosotros podemos hacer es cambiar esta sintaxis de los paréntesis de llaves y lo podemos cambiar por voy a recortar acá New int y voy a colocar Abre Paréntesis cuadrado y también cierre pero lo voy a hacer dos veces y acá yo le puedo indicar las columnas y también las filas que este va a tener entonces yo voy a indicar que este va a ser de 3 * 2 Ahora cuando yo quiera acceder a
modificar alguno de estos elementos lo que tengo que hacer es indicarle números seguido De cuál va a ser la primera fila que yo quiero modificar en este caso Yo quiero modificar la primera fila y seguido de eso Cuál va a ser la columna Que nosotros vamos a modificar que en este caso Yo quiero que sea también la primera y aquí yo le voy a asignar el valor de cinco vamos a guardar y vamos a ejecutar nuevamente nuestro código y ahora podemos ver como el primer elemento es cinco seguido de Cero y después de eso nosotros
tenemos otro arrey y otro array Esto es lo que tienes que saber sobre los array de múltiples dimensiones pero una cosa más antes de irnos si nosotros quisiéramos hacer esto Mismo pero de tres dimensiones agregamos aquí otro paréntesis cuadrado y también lo agregamos aquí al final y yo le voy a indicar que acá yo quiero por ejemplo una rey de dos dimensiones vamos a modificar También acá abajo para modificar también el primer elemento ahora guardamos ejecutamos nuevamente y mira aquí ya nosotros tenemos nuestros arrays de arrays de arrays o en otras palabras nuestro array de
tres dimensiones Vamos a continuar hablando Sobre las constantes para eso vamos a crear una variable que va a ser un String y este va a ser el nombre de una empresa en este caso la empresa se va a llamar Hola mundo si nosotros queremos empezar a hacer referencia al nombre de la empresa más adelante nosotros Sencillamente tenemos que llamar al nombre de la variable que en este caso es empresa de esta manera nosotros nosotros podemos ir mostrando este valor más adelante en el caso que lo vayamos Necesitando Incluso le podríamos colocar Hola mundo limited de
esta manera todas las referencias que yo tenga más adelante van a mostrar esto ahora qué es lo que ocurriría si de repente ya sea por error o por la razón que sea existe un desarrollador que decide cambiarle el nombre y ya no quiere que se llame Hola mundo limited sino que ahora quiere que se llame Chanchito feliz esto por supuesto que empezaría a arrojar problemas lógicos dentro de nuestra Aplicación porque la empresa no se llama Chanchito feliz sino que esta se llama Hola mundo Entonces cómo nosotros podríamos corregir esto utilizando las constantes las constantes son
variables que no pueden cambiar Si nosotros intentamos hacerlas cambiar en ese caso Java nos va a arrojar un error y nuestra aplicación no se va a poder ejecutar para nosotros poder crear una constante basta que justamente antes de la declaración del tipo que podría ser un Número podría ser un entero podría ser un bite podría ser un String podría ser un float también que nosotros le coloquemos la palabra de final cuando nos Nosotros le agregamos esta palabra de final Java entiende que esta variable de empresa no va a poder cambiar y acá podemos ver que
aparece el nombre de la variable subrayado en rojo y nos está indicando que no puede asignar un valor distinto a la variable final empresa esto no solamente nos va a servir para Nombres de empresa sino que también nos va a servir para números mágicos Como por ejemplo podrían ser pi podría ser el número de abogadro Y así sucesivamente Como por ejemplo también podría ser un límite Enduro que nosotros queramos colocar dentro de nuestra aplicación Como por ejemplo qué es lo que nosotros vamos a considerar mayoría de edad Recuerda que hay países con los cuales tú
puedes empezar a conducir teniendo 16 años otros que es a los 17 y otros que Derechamente no puedes empezar a conducir hasta los 18 entonces también tú puedes empezar a jugar con esos datos y puedes declararlos como constantes para que estos no cambien más adelante en tu código Oye y ya que estás por acá podrías aprovechar de revisar los libros de desarrollo que tenemos tenemos libros de python básico docker y estamos a punto de lanzar Us ar también un libro de typescript y de python avanzado te dejo los links en la descripción de este Video
Y si te gustó este curso aprovecha de matricularte en la academia Hola mundo Te dejo el link abajo en la descripción Ahora sí continuemos con el curso en este video vamos a mencionar muy rápidamente los comentarios un comentario es código que no va a ser ejecutado Entonces para qué nos sirve escribir código si este no va a ser ejecutado después en un futuro y es para poder entregarnos mensajes a nosotros o a otros desarrolladores que vayan a Tocar el código que nosotros estamos creando incluso podría servirnos para nosotros decirnos Oye este código después tengo que
realizar una modificación o tienes que considerar también este caso borde Y así sucesivamente existen muchas razones por las cuales tú vas a querer utilizar comentarios y la manera de tú poder escribir un comentario es la siguiente para crear comentarios de una sola línea tienes que utilizar dos veces el Slash Hacia adelante esto es un comentario de una línea esto lo que va a hacer es que nosotros podamos escribir todo lo que nosotros queramos a la derecha y este código va a ser ignorado por nuestra aplicación si nosotros ejecutamos nuestra aplicación nos va a indicar un
error porque en este caso todavía tenemos el código de la clase pasada que es el de las constantes Ahora sí vamos a eliminarlo volvemos a guardar y volvemos a ejecutar y como puedes ver me sigue Mostrando el texto de Hola mundo Limited y nada más como puedes ver el texto que aparece acá arriba es ignorado por Java ahora qué es lo que pasa si nosotros queremos escribir un comentario pero que este esté en muchas líneas en ese caso podemos utilizar el Slash hacia adante dos veces el asterisco y acá lo que vamos a hacer nosotros
es presionar enter cuando eso ocurra intellij se va a encargar de escribir todo este código por nosotros como puedes ver nosotros Solamente tuvimos que escribir esto y cuando presionamos enter después intellij se encargó de agregar este asterisco seguido de este asterisco y también de este Slash hacia adelante sin embargo esto es más como una a uda de intellij para nosotros poder crear comentarios de múltiples líneas si nosotros queremos crearlo la manera estricta vendría siendo que volvamos a colocar acá un asterisco y un Slash hacia delante de esta manera todo lo que Nosotros escribamos aquí entre
medio va a ser ignorado vamos a eliminar esto y ahora lo que podemos empezar a hacer es justamente entre medio de estos dos asteriscos es escribir todos los comentarios que nosotros queramos pero vamos a aprovechar de hacer uso de intelligent como te contaba basta con que nosotros coloquemos el Slash hacia delante y el asterisco dos veces y luego presionamos enter para que nos agregue un asterisco también aquí entre medio si Nosotros no lo hacemos con dos asteriscos te lo voy a mostrar inmediatamente qué es lo que ocurre si colocamos un cach hacia delante y asterisco
y acá nosotros presionamos enter intelij no nos va a agregar el asterisco aquí entre medio pero sí nos va a cerrar el comentario de múltiples líneas utiliza el que tú más quieras yo yo la verdad es que estoy sumamente acostumbrado a crear los comentarios de múltiples líneas con dos asteriscos Porque así cuando estoy escribiendo este siempre se va a mantener dentro de la misma vertical Qué quiere decir esto se va a encontrar todo aquí alineado acá si es que nosotros no hacemos eso y lo creamos solamente con un asterisco como lo voy a hacer ahora
yo voy a escribir un comentario acá y como puedes ver todo este texto se encuentra más a la izquierda de los asteriscos esto es netamente preferencia tú puedes utilizar cualquiera de de los dos los dos son Completamente válidos ya sea con dos asteriscos o con un asterisco Vamos a continuar en este video viendo los operadores matemáticos o también conocidos Como los operadores aritméticos Ahora sí lo primero que nosotros vamos a hacer es empezar a declarar variables esta Va a ser la única parte en este curso donde tú me vas a ver declarando las variables de
esta manera Por lo general tú tienes que crear las variables con nombres Representativos Pero como ahora solamente estamos utilizando números de ejemplo la verdad es que no es tan importante vamos a crear una variable que se va a llamar a esta Va a ser un número entero y va a ser igual a la suma de dos números en este caso vamos a sumar 2 + 2 ahora vamos a guardar y vamos a mostrar este resultado dentro de nuestra consola como puedes ver ahora lo que está haciendo es Mostrarme el resultado aquí que es cuatro Entonces
Nosotros dentro de Java tenemos suma También tenemos resta que en este caso yo lo voy a declarar como B También tenemos multiplicación aquí yo voy a colocar 3 * 3 el símbolo de por es con el asterisco o el símbolo de multiplicación se hace con asterisco y el símbolo de división este es sumamente interesante se hace con un Slash hacia adelante yo acá voy a colocar el número 10 y voy a dividirlo en tres vamos a venir a la división nuevamente en un par De segundos pero quiero que sepas que así se realiza la división
en Java ahora antes de este también existe otro operador que se llama módulo yo lo voy a asignar a una variable que se llama en este caso nosotros vamos a hacer el módulo de 4 en 3 el módulo que hace es que te indica Cuánto es el resto de la operación de división O sea que Cuántas veces entra el TR en cuatro una vez sobra uno entonces en ese caso el módulo vendría siendo uno vamos a mostrarlo Aquí voy a colocar m vamos a ejecutar y como puedes ver aquí ya me está mostrando el valor
de uno Ahora sí vamos a volver a la división porque este la verdad es que es bastante interesante si tú divides 10 en 3 este está está siendo asignado acá a una variable de tipo entero pero cómo es esto posible porque 10 di en 3 Debería ser 3.3333 periódico Entonces esto es porque las divisiones en Java son sumamente interesantes vamos a ver qué es lo que Nos muestra acá yo voy a imprimir ahora la letra d vamos a ejecutar nuestro código y mira me está mostrando el valor de 3 qué es lo que pasa si
yo quiero obtener el resultado pero con los decimales que se encuentren hacia la derecha vamos a ver cómo podemos hacer eso lo primero que deberíamos hacer es cambiar ciar el tipo de dato que se encuentra a la izquierda entonces en lugar de hacerlo con un entero yo lo voy a guardar dentro de un float ahora será Esto suficiente vamos a verlo ejecutamos el código y vemos que ahora me está mostrando 3.0 no es exactamente lo que queremos Pero ya sé que estamos avanzando en la dirección correcta Entonces qué debería hacer yo en este caso debería
indicar que estos números son flotantes tanto los de la derecha como los de la izquierda y comoo nosotros le podemos indicar a Java que un número es flotante con la letra f Así que vamos a colocar 10f y 3f vamos a Guardar y volvemos a ejecutar nuestro código y ahora ya podemos ver el resultado de 3.3333 esto es super importante porque si tú vas a querer realizar divisiones en Java va a ser muy importante que si quieres un float que le coloques la f Si tú no le colocas la f te va a pasar lo
que vimos antes que te va a entregar el resultado pero con un decimal de cero ahora vamos a ir un paso más allá con la división en lugar de utilizar flotante Vamos a utilizar doubles para yo poder la Java que voy a utilizar un Double basta con que le coloque punto cer y de esta manera Java va a interpretar inmediatamente que este número es de tipo Double ahora me está arrojando un error porque me está indicando que yo le estoy pasando un valor Double sin embargo le estoy indicando que el requerido es un float vamos
a corregir esto cambiando el tipo de float por Double ahora si es que nosotros Guardamos y volvemos a ejecutar nuestro código ahora podemos ver que tenemos muchos pero muchos más números hacia la derecha pero fíjate también en algo sumamente importante acá nosotros tenemos un cinco y esto es superimportante y te va a pasar con absolutamente todos los lenguajes de programación los lenguajes de programación no son 100% exactos Al momento de realizar operaciones Matemáticas por eso lo que a nosotros Nos interesa es que nuestras operaciones Matemáticas sean razonablemente exactas entonces en el caso de la división
de 10 di en 3 para nosotros es razonable el 3,333 y hasta incluso podría ser hasta aquí después de eso La verdad es que el valor ya empezaría a ser despreciable A menos que estemos trabajando con números muy grandes en ese caso lo que más nos convendría a nosotros sería cambiar la unidad pero aquí ya me estoy empezando a adelantar un poco al respecto Entonces Esta sería la forma de trabajar con los doubles tenemos que indicarle el decimal y si queremos hacerlo con los floats tenemos que transformar todos nuestros números a un float voy a
dejarlo ahora como float voy a volver a ejecutar el código porque me molesta ver S5 y ahora sí perfecto ya tenemos el 3.3 periódico ahora lo que vamos a hacer es declarar otra variable que esta Va a ser x y le voy a indicar que su valor inicial va a ser el de 5 voy a cambiar mi print Ln Que se encuentra más abajo para en lugar de imprimirme D Ahora quiero que me imprima x y si todo funcionó correctamente deberíamos ver ahora cuando ejecutamos nuestra aplicación que me está arrojando el valor de 5 ahora
vamos a hacerlo siguiente vamos a indicar que yo quiero aumentar el valor de c en uno eso nosotros lo podemos hacer de dos formas la primera vendría siendo con el símbolo de más más seguido de x y esto lo que hará será incrementar El valor de X en 1 si ejecutamos nuestro código deberíamos ver el valor de 6 pero también va a ocurrir Exactamente lo mismo si nosotros colocamos el símbolo de más más a la derecha como puedes ver acá Nosotros también tenemos el valor de seis Entonces cuál es la diferencia entre colocar el símbolo
de más antes y el símbolo de más después te lo voy a mostrar eliminando esta línea de código y haciendo esta misma operación dentro del mismo print Ln si yo le indico con El operador de más más antes de la variable Y si ejecuto esto vamos a poder ver que la variable que en este caso es x Se incrementa su valor y luego se le pasa a el método de print Ln por el contrario si nosotros colocamos el símbolo de + lo que va a ocurrir es que va a tomar el valor de X se
lo va a pasar al método de print Ln y luego va a aumentar su valor ahora por qué esto es importante porque podría ser que nosotros quisieramos realizar una Operación como esta yo lo que voy a hacer ahora es declarar una nueva variable que se va a llamar y y esta Va a ser Exactamente igual a más más de X vamos a guardar y vamos a imprimir tanto x como y ahora sí guardemos Y ejecutamos como puedes ver en este caso tanto x como y son 6 qué es lo que va a ocurrir si es
que nosotros cambiamos esta operación de más más hacia la derecha lo que va a ocurrir es que el valor de X se le va a asignar a y que en este caso es 5 y luego va a incrementar su valor en uno vamos a guardar y ejecutamos nuestra aplicación nuevamente y ahora podemos ver que nos está mostrando 6 y C por eso es importante dónde nosotros vamos a colocar el símbolo de más más si nosotros queremos incrementar el valor y ahora lo último que tenemos que ver de los operadores aritméticos antes de pasar al siguiente
video voy a comentar la línea de y para eso vamos a utilizar dos veces los slat hacia adante y voy a Hacer exactamente lo mismo con el system.out println entonces justamente acá de después de la línea que yo comenté voy a indicar que yo quiero incrementar el valor de X en C entonces para hacer esto la forma lógica vendría siendo volver a indicar el nombre de la variable de X seguido de x + 5 cuando yo haga esto lo que va a ocurrir es que me va a aumentar el valor de X en 5 Entonces
ya no vale 5co sino que ahora vale 10 sin embargo existe una forma Todavía más corta de yo poder realizar esta misma operación Y es que en lugar de asignarle a x el valor de X + 5 Es que yo utilice un operador corto y en este caso es colocando el símbolo de más seguido del valor el cual yo quiero incrementar que en este caso es cco esto es exactamente lo mismo que lo que vimos antes ahora si es que yo guardo y ejecuto mi código vamos a ver que me sigue mostrando el valor de
10 esto también existe para las restas para la Multiplicación y también para la división ahora podemos continuar con nuestro siguiente video en este video vamos a hablar del orden orden en el cual se Ejecutan las operaciones Matemáticas acá nosotros tenemos la siguiente fórmula tenemos 5 + 3 * 2 cuánto crees tú que te va a arrojar esto como resultado Si Tú pensaste que esto te va a arrojar 10 estás equivocado porque ese no es el orden en el cual se Ejecutan las Operaciones Matemáticas por lo general las operaciones Matemáticas tienen un orden y en este
caso tenemos lo primero que se van a ejecutar son las operaciones con paréntesis después vienen las potencias Aquí voy voy a colocar potencia que vendría siendo el número elevado a siempre se resuelven primero los paréntesis y luego las potencias después de esto nosotros tenemos las operaciones como multiplicación y luego División y Después de esto tenemos las operaciones como suma y resta este va a ser el orden en el cual siempre se van a ejecutar las operaciones Matemáticas si tú quieres por alguna razón cambiar el orden en el cual se están ejecutando estas operaciones Matemáticas tú
lo que puedes hacer es agregar paréntesis a estas Por ahora lo que vamos a hacer es ejecutar nuestro código y vamos a ver que el valor que nos está arrojando es el de 11 y la razón de esto es si nosotros Seguimos esta misma ley que aparece acá tenemos que 3 * 2 es 6 y si a 6 le sumamos 5co este nos da 11 y no es 5 + 3 8 * 2 16 creo que te dije 10 pero en verdad era 16 A lo que me refería entonces para poder nosotros acordarnos de esto
existe una nomenclatura en inglés que se llama pemdas pemdas es por paréntesis exponential multiplicación división adene de addition y la s de subtraction te los voy a anotar acá al lado la p es por paréntesis te voy a Anotar esto en inglés Eso sí la e es por exponential o las potencias la M es por multiplicación o multiplication la d es por division la a es por add y la s es por subtraction si esto no lo conocías Es un excelente momento para aprendérselo Y ahora te voy a enseñar Cómo nosotros podemos cambiar el orden
de las operaciones vamos a venir acá al cinco voy a colocar un Abre paréntesis después del tres voy a colocar un cierra paréntesis voy a Guardar ejecuto el código y ahora sí nosotros tenemos el valor de 16 que puede ser que alguno de ustedes le haya dado y ahora Nos está dando porque nosotros forzamos cambiar el orden de ejecución de esta fórmula que aparece acá en este video vamos a hablar de Cómo podemos convertir los distintos tipos de Java ya sea de un String a algún tipo de número como un integer o también de algún
integer pasarlo a String Así que para eso vamos a venir nuevamente aquí a Intellij y vamos a realizar la siguiente operación vamos a crear un byte el cual le vamos a dar de nombre a al nombre de la variable y le vamos a asignar el valor de uno además de esto nosotros vamos a crear otro número el cual vamos a decir que es un int y este va a tener el valor de 15 lo que nosotros queremos hacer ahora es poder crear una suma entre estos dos valores acá nosotros tenemos a tenemos B pero también
sabemos que estos son de tipos distintos acá uno Es un byte y acá otro es un entero lo que nosotros queremos hacer ahora es poder sumar estos dos números pero nosotros también sabemos que uno es de tipo byte y el otro es de tipo int entonces Si nosotros realizamos la suma deberíamos realizar un tipo de conversión vamos a hacer eso inmediatamente lo que vamos a hacer es crear una nueva variable que se va a llamar int c y esta Va a ser igual a la suma de a + b vamos a ver qué es lo
que Ocurre en este momento vemos que no está pasando absolutamente nada Entonces por qué esto está funcionando te voy a explicar qué es lo que hace Java por debajo Java lo que va a hacer es que cuando vea esta operación va a ver el valor de b y también va a ver el valor de A además de eso va a ver el valor que se encuentra a la izquierda de qué tipo de dato es y este va a decir okay nosotros tenemos acá un byte y lo queremos sumar con otro número que es un Int
Nosotros sabemos que byte contiene solamente un byte y los int o los integer son de 4 bytes lo que va a hacer Java sin que nosotros tengamos que decir absolutamente nada Es que va a tomar el tipo de dato que contenga menos bytes en este caso byte y lo va a pasar al tipo de dato que contenga más bytes que en este caso es un integer ahora esto que yo te acabo de mencionar no va a ocurrir con esta variable de a solamente va a ocurrir en el alcance de este pequeño Rectángulo que es donde
nosotros estamos realizando la suma Así que vamos a hacer ahora un print Ln DC y vamos a ver qué es lo que este nos muestra y acá nosotros podemos ver que nos está mostrando el valor de 16 ahora qué es lo que ocurriría si nosotros en lugar de querer sumar un entero con un byte sumá por ejemplo un Double con un byte vamos a colocar acá el valor de 15.15 en este caso ahora nosotros vemos que me está arrojando un error Por qué Porque aquí Yo le estoy indicando que estoy creando una nueva variable que
es de tipo int sin embargo se me está entregando un Double Así que esto nosotros vamos a tener que cambiarlo también ahora vamos a guardar volvemos a ejecutar y vemos que la aplicación sigue funcionando con éxito Entonces esto tiene que ir de dato más pequeño a dato más grande partimos con el byte después esto iría a short después de short pasamos a un int y después de esto nosotros pasaríamos a un Long después del long viene el float y después del float viene el Double este tipo de transformación Solamente se puede realizar con tipos que
sean válidos entre sí O sea de tipos números se pueden hacer con tipos de números y también bien a esto se le llama conversión implícita esto quiere decir que nosotros no vamos a tener que hacer absolutamente nada sino que Java se va a encargar de realizar la conversión de tipos ahora vamos a ver cómo podemos Realizar una conversión explícita para eso vamos a hacer un ejercicio parecido vamos a crear una variable que se va a llamar x y esta va a tener el valor de 15 y luego vamos a crear otra variable que va a
ser un Double y esta se va a llamar y y va a tener el valor de 15 pun 015 da lo mismo lo importante es que sea un valor con decimales ahora supongamos que nosotros queremos sumar estos dos tipos Por ejemplo yo acá lo que quiero hacer es Asignárseles que va a ser de tipo entero y acá yo lo que hago es sumar x + y esto me va a arrojar un error y por qué me va a arrojar un error porque si nosotros colocamos el mouse acá encima me va a indicar que está esperando
un tipo de dato Double y yo estoy creando un int Pero existe un caso donde yo podría querer quedarme con ese tipo de dato int y descartar por ejemplo todos los valores decimales Y acá es cuando nosotros tenemos que utilizar la Conversión explícita acá Nosotros le tenemos que indicar a Java Oye independiente de lo que esto me devuelva quiero que lo transformes a un int y la manera correcta de hacer eso es nosotros tenemos que envolver toda esta expresión dentro de unos paréntesis redondos y luego al comienzo antes de esta le vamos a indicar el
tipo de dato al cual queremos que esta la transforme yo le voy a indicar que va a ser un int y el último paso es colocar el tipo de dato Entre paréntesis ahora como podemos ver ya no tenemos absolutamente ningún error y si nosotros intentamos imprimir el valor de Z vamos a guardar y ejecutamos vamos a ver que ahora me está mostrando el valor de 30 que eso es lo que nosotros estábamos esperando ahora en este momento justamente en esta parte lo que nosotros hicimos fue tomar toda esta ecuación x + y y la transformamos
a un entero qué ocurriría si yo no quiero transformar absolutamente todo el Resultado sino que quiero transformar por ejemplo solamente lo que se encuentra aquí en y ya que en y es donde se encuentra el tipo de dato Double entonces para que nosotros podamos hacer eso tenemos que primero Eliminar todos estos paréntesis y ahora antes de cada una de estas variables le tenemos que indicar el tipo de dato al cual queremos transformarlo Entonces nosotros no queremos transformar x porque x ya es de tipo int el que nosotros queremos Transformar es y así que acá nosotros
vamos a colocar un abre y cierra paréntesis y acá dentro nosotros vamos a colocar int ahora si es que nosotros guardamos y volvemos a ejecutar vemos como todavía nos está mostrando acá el valor de 30 perfecto profesor muy bonito y todo pero qué es lo que ocurre si nosotros queremos realizar una transformación de un String a un número entero por ejemplo vamos a ver cómo podemos realizar esto mismo vamos a Realizar ahora una conversión explícita pero de un tipo de dato String el cual este va a ser J su valor va a ser el de
1.1 y lo que vamos a querer hacer es sumarlo con otro tipo de dato que en este caso va a ser un int la variable va a ser k y su valor va a ser por ejemplo 5 ahora lo que queremos hacer es poder sumar estos dos datos lo que yo sí sé es que esto me va a devolver un Double o un float Así que yo lo que voy a hacer es crear una variable Double que se va a Llamar L y Esto va a ser igual a la suma de j + k esto
por supuesto que me va a indicar un error si nosotros colocamos el mouse acá encima deberíamos ver cómo me muestra que el error es por porque nosotros le estamos devolviendo un String sin embargo este necesita un tipo de dato Double entonces para nosotros poder transformar el tipo de dato lo más probable es que nosotros estemos pensando que aquí a la J Sencillamente baste con ponerle dou lo encerramos Entre paréntesis pero me está indicando un error Por qué ocurre esto y esto es porque los strings nosotros no podemos directamente pasarlos a un tipo de dato number
para eso existen clases dentro de Java que pueden tomar strings y pasarlos al tipo de dat que a nosotros nos interesa en este caso Yo quiero tomar J Y pasarlo a un tipo de dato Double Entonces como el tipo de dato es Double yo tengo que escribir acá Double con la d mayúscula y dentro de Java se Encuentra una clase dentro del módulo de acá nosotros podemos ver como me está mostrando 6.1 yo acabo de hacer esto pero para el tipo de dato Double Existirá una clase también para los tipos de datos float int byte
Y así sucesivamente Claro que sí para eso lo que nosotros tenemos que hacer es cambiar el nombre de la clase en este caso de Double yo lo voy a pasar a por ejemplo byte tengo que escribir byte con la B mayúscula y el método en lugar de Llamarse pars Double se va a llamar parse byte si yo quiero hacer esto mismo con un parse int Acá tengo que colocar pars int pero la clase en lugar de llamarse int se llama integer esa vendría siendo la excepción el resto de las clases se llaman bite short Double
float Y así sucesivamente salvo int que para ese tipo de dato la clase se llama integer Ahora yo voy a devolver esto a Double perfecto y voy a guardar y con esto ya podemos pasar al siguiente Video en este video vamos a ver la clase de math esta nos va a entregar unas cuantas funcionalidades más para poder trabajar con operaciones Matemáticas Así que vamos a verla inmediatamente para poder utilizarla tenemos que escribir acá math con la m mayúscula y esta se va a encontrar dentro del módulo de se llama ABS este te entrega el valor
absoluto pero vamos a aprovechar también de ver otras cosas que este me está mostrando acá por ejemplo nosotros Podemos ver que tenemos el método de ABS pero contiene un int a también long a float a y Double a esto quiere decir que el método se encuentra overloaded vamos a escribir acá overloaded esto quiere decir que el método ha sido implementado muchas veces para poder aceptar distintos tipos de datos esto lo vamos a ver en mucha mayor profundidad más más adelante en el curso pero por ahora tienes que entender lo siguiente puedes utilizar el mismo Método
con distintos tipos de datos Y ese es el beneficio que te entrega Así que ahora vamos a comenzar con ABS este me va a entregar el valor absoluto de un número y el valor absoluto vamos a decir que va a ser el de -1 Si nosotros intentamos imprimir esto el valor absoluto de -15 Cuánto es es 15 Así que yo lo que voy a hacer es guardar esto y voy a ejecutar mi aplicación perfecto y acá podemos ver que me está arrojando el valor de 15 eso es lo que nosotros Queremos ahora vamos a continuar
con el siguiente método que también es bastante útil el cual es seal este lo que va a hacer es tomar un número y redondearlo al número de más arriba Entonces si nosotros tenemos por ejemplo un 10.1 este lo que va a hacer es transformarlo en 11 Incluso si yo tengo 00 y así sucesivamente siempre lo va a transformar en 11 Ahora yo lo que voy a hacer es guardar vamos a imprimir este número y ejecutamos la aplicación y Podemos ver ahora cómo me está arrojando el valor de 11 vamos a ver ahora la contraparte de
sil la cual se llama floor y floor lo que va a hacer es tomar el número no importa queé tan cercano se encuentre en este caso por ejemplo a 11 lo que va a hacer es que lo va a transformar en 10 vamos a ejecutar nuevamente y ahí vemos como me está indicando el valor de 10 Ahora sí podemos devolvernos a ver el siguiente método el cual es el de Max Así que Vamos a hacer nuevamente Un s para que nos muestre nuestro system.out println y acá vamos a escribir math punto Max y este método
recibe dos números puede ser entero long float o Double yo voy a ir con enteros y lo que va a hacer es que te va a devolver Cuál de los dos números es el mayor ahora tú te preguntarás si es que yo coloco 12 y 25 Yo sé que 25 es el mayor y tendrías razón pero cuando tú estás recibiendo datos a través de una aplicación Tú no sabes qué usuario es Mayor porque te están llegando datos Y tú los estás viendo como variables por esto estos métodos también son muy importantes vamos a hacer exactamente
esto mismo ahora pero el método siguiente en lugar de llamarse Max se llama min y este lo que hace es que te devuelve el número de menor valor vamos a ejecutar nuestra aplicación para ver estos dos resultados y como puedes ver acá nosotros tenemos el valor de 25 y también tenemos el valor de 15 que son Los valores respectivos que me entregan los métodos de Max y también el método de min ahora vamos a ver otro número que se parece bastante a los que nosotros vimos antes el cual se llama round Así que volvemos a
ejecutar un sou y volvemos a llamar a math pero ahora vamos a utilizar al método de round este lo que va a hacer es tomar un número cualquiera por ejemplo 15.5 y lo va a redondear al número más cercano si nosotros guardamos y ejecutamos esto Deberíamos ver acá cómo me devuelve 16 porque 15.5 se encuentra más cercano a 16 Vamos a continuar con el siguiente método sumamente útil también de math el cual se llama math Random y este lo que va a hacer es devolverme un número aleatorio entre 0 y 1 Vamos a asignarle le
este valor a una variable que se va a llamar Random con la r minúscula y luego lo vamos a imprimir perfecto guardamos y ejecutamos nuestra aplicación y acá podemos ver cómo me está devolviendo Este número te voy a aprovechar de Mostrar un tip antes de continuar con el video vamos a colocar el mouse acá arriba y te va a indicar el atajo de teclado para tú poder cerrar este panel en mi caso es con shift y la tecla de escape voy a presionar esta combinación y ahí me acaba de cerrar el panel ahora qué pasaría
si yo lo que quiero en verdad es un número entre un y 100 en es en este caso lo que tenemos que hacer es multiplicar el número de Random por 100 Así es que vamos a hacer eso guardamos y ahora nosotros podemos ver cómo me está devolviendo el valor de 29 y si ejecuto mi aplicación un par de veces más vamos viendo como este me está arrojando distintos números cada vez que yo lo ejecuto ahora qué es lo que pasa si yo lo que quiero hacer es descartar todos los valores decimales en ese caso lo
que tengo que hacer es transformar este número realizando una transformación explícita a un número entero la otra Alternativa que nosotros también tenemos es es que utilicemos round yo lo que voy a hacer es transformar esto a un entero Así que voy a envolver toda esta operación dentro de los paréntesis Recuerda que si nosotros no lo hacemos no nos va a funcionar y después antes de esto le vamos a indicar que queremos pasar el resultado de esta operación de la multiplicación entre Random por 100 lo vamos a transformar a un int y Nosotros sabemos que vamos
a utilizar Esta transformación o que se la vamos a aplicar a todo esto porque colocamos los paréntesis estos paréntesis son sumamente importante si nosotros no los colocamos nos va a aplicar la transformación solamente aquí a Random Así que ahora sí podemos guardar con el atajo de teclado y volvemos a ejecutar nuestra aplicación y ahora vemos cómo me está arrojando el valor de 43 lo vuelvo a ejecutar 58 lo vuelvo a ejecutar 84 sin embargo igual te voy a mostrar qué Es lo que ocurre si nosotros quitamos estos paréntesis Así que yo los voy a quitar
voy a volver a ejecutar y mira Acá tengo el valor de Cero y si vuelve a ejecutar cero y si vuelvo a ejecutar cero dime tú por qué está pasando esto o no No te preocupes yo te lo voy a decir Esto está pasando porque la transformación a número entero se le está aplicando solamente a la variable de Random por eso Si tú quieres que todo eso se transforme a un tipo de dato en Específico lo mejor que puedes hacer es envolverlo dentro de paréntesis ahora si nosotros guardamos y volvemos a ejecutar ahí se encuentra
funcionando correctamente nuestra aplicación nuevamente en este video vamos a ver cómo podemos darle formato a los números ya sea para poder mostrarlos como porcentajes O también para poder mostr arlos como tipos de moneda Así que vamos a eso lo primero que tenemos que hacer es empezar a trabajar con una clase que Se llama number format esta clase es abstracta lo que significa que tú no puedes crear instancias de objeto directamente utilizando la palabra reservada de New nosotros vamos a ver esto más en detalle en los siguientes videos cuando estemos ya trabajando con clases pero por
ahora vamos a trabajar con esto de todas maneras esta clase de Number format como puedes ver me agregó intellij el import en la primera línea contiene los siguientes métodos el Primero es el de get currency instance este me va a permitir a mí poder obtener un objeto con el cual yo voy a poder trabajar con tipos de monedas Así que voy a seleccionar esta y se la voy a asignar a una variable que se va a llamar number format Y esta es una instancia de la clase de Number format aquí esto es lo mismo que
con los números y también con los strings nosotros colocamos el nombre de la clase seguido del nombre de la variable ahora Nosotros podemos continuar podemos utilizar number format format y acá Nosotros le podemos indicar el número que nosotros queremos que esteé formatee por ejemplo yo voy a indicar que quiero formatear el valor de 199,90 y este valor se lo voy a asignar a un String que se va a llamar result y ahora nosotros podemos imprimir result dentro de nuestra consola el tipo de variable con String es con ese mayúscula aquí me equivoqué lo vamos a
cambiar Perfecto ahora guardemos y ejecutemos y acá nosotros podemos ver ya que me estamos mostrando un tipo de moneda que en este caso vendría siendo el valor de algo en 1099 pesos de algo o dólares de algo y 90 centavos sin embargo Java lo que va a hacer es utilizar el tipo de local que se encuentra dentro de tu máquina en ese momento yo lo tengo en una local de Nueva Zelanda Así que si tú la quieres cambiar por ejemplo a la local de chile O a la local de España vas a tener que aplicar
una transformación te voy a mostrar Cómo se hace eso para nosotros poder cambiar el tipo de local o el lenguaje en el cual nosotros estamos trabajando y con lenguaje no me refiero a Java me refiero a inglés español Castellano español de Argentina español de chile español de Perú porque son todos distintos para eso nosotros tenemos que utilizar la local en específico la local de chile la local de Argentina la local de Perú y así sucesivamente Así que yo lo que te estado diciendo constantemente es local porque ese es el que almacena la forma de cómo
se escriben ya sea ciertas palabras o también cómo se formatean ciertos números Así que vamos a crear una instancia de la la clase de local Así que vamos a escribir local y luego vamos a llamar a la variable local después de esto tenemos que llamar a la clase de local y acá nosotros escribimos Punto acá te va a indicar unos valores de Canadá china chinese english Nosotros los vamos a ignorar Porque si tú me estás viendo Ahora lo más probable es que estés viviendo en un país que se hable español así que acá tenemos que
llamar al método for Language tag y acá Nosotros le tenemos que indicar la etiqueta del lenguaje y esto nosotros se lo tenemos que pasar como un Stream en el cas caso de chile por ejemplo es con es- cl en mayúscula si tú quieres Conocer la etiqueta de tu país en específico la puedes buscar en Google yo te voy a mostrar Cómo se hace aquí dentro de Google suponiendo que vamos a buscar la etiqueta de local por ejemplo para Colombia vamos a escribir Colombia locale code y esto me va a devolver el código acá nosotros vemos
que es s- co vamos a buscar la de Argentina vamos a reemplazar Colombia por Argentina presionamos enter y acá nosotros podemos ver que es es- r Así que si necesitas Una local en específico ya sabes cómo poder buscarla Ahora nos vamos a devolver a intellij y a continuación lo que debemos hacer es tomar esta variable de local y pasársela al método de get currency instance Ahora sí podemos guardar y vamos a ejecutar nuevamente nuestra aplicación y ahora podemos ver que me está devolviendo la moneda en el tipo de peso de la localidad que en este
caso es en pesos chilenos Y en lugar de utilizar las comas en este caso está Utilizando el punto para poder separar los Y ahora te voy a mostrar lo último que tenemos que ver sobre number format y es como nosotros podemos tomar un número y formatearlo como porcentaje para hacer esto es sumamente fácil tenemos que volver a declarar una variable en base a number format pero yo le voy a indicar que se llama porcentaje y Esto va a ser igual a numberformat get percentage instance Así es como se llama este método también le Puedes pasar
la local de tu país en este caso yo no lo voy a hacer y ahora podemos imprimir este valor de porcentaje Llamando al método de format y luego le podemos pasar el número que nosotros queremos formatear en este caso yo le voy a indicar que va a ser 15 Así que esto me debería devolver 15% guardamos Y si ejecutamos la aplicación acá podemos ver ahora cómo me está indicando el valor con porcentajes acá vemos que está el 15% ahora vamos a continuar con la clase que yo al menos Creo que es la más entretenida de
esta sección y es cuando nosotros empezamos a capturar datos de los Us usuarios Así que vamos a comenzar con eso aquí dentro de nuestro mismo archivo vamos a crear una instancia de otra clase que nosotros no conocemos y en este caso se llama Scanner como puedes ver esta se encuentra dentro de Java util Y acá es donde nosotros tenemos que indicar el nombre de la Variable por convención cada vez que nosotros queremos crear una instancia de una clase primero casteos el nombre de la clase y luego le indicamos con el mismo nombre de la clase
pero en minúscula el nombre de la variable esto nosotros ya lo vimos dentro de los primeros videos de Java así que deberías recordarlo y si no te estás acordando deberías prestar más atención porque eso te lo pasé bueno Vamos a continuar aquí Nosotros llamamos a la palabra reservada De New Scanner para crear una nueva instancia y después de eso Nosotros le tenemos que pasar un valor el cual se va a utilizar para saber de dónde tiene que estar leyendo información este escáner Y en este caso va a leer información desde system.in nosotros ya hemos trabajado
con system.out pero en este caso tenemos que trabajar con system.in ahora sí podemos guardar pero como puedes ver aquí me está indicando Scanner en rojo esto es porque la clase no se encuentra Disponible para poder importarla nosotros vamos a venir acá y vamos a pinchar acá donde dice import Class y esto debería importarlo de manera automática y ahí se encuentra ahora en la primera línea java.util.jar tienen distintos métodos para poder leer datos de la consola el primero que vamos a ver nosotros es es el de next y esto nosotros se lo tenemos que asignar a
una variable en este caso yo voy a indicar que se va a llamar Valor y ahora lo que vamos a hacer es imprimirla no vamos a hacer absolutamente nada mágico vamos a guardar y vamos a ejecutar aquí nosotros vemos que me abrió la terminal no hay absolutamente nada nuevo Así que vamos a empezar a escribir algo acá voy a escribir hola mundo y si presiono enter me va a mostrar el texto de Hola Bueno ya estamos avanzando me está mostrando texto pero no me está mostrando el texto completo Qué es lo que está ocurriendo y
Lo que ocurre es que que cada vez que nosotros estamos trabajando con por ejemplo esta clase de scanner el método de next no son todos los métodos es solamente el método de next va a evaluar cada una de las palabras separadas por un espacio como un token o como una llave o como un símbolo independiente eso va a ser tanto para Hola como para mundo Cada una de estas cosas va a ser un toque y este método de next lo que va a hacer es que va a tomar el primer Token que se encuentre ahí
disponible Así que para nosotros poder solo funcionar esto mismo basta con que cambiemos el método si nosotros no ingresá muchos caracteres con este ya estaría bien Pero como nosotros ingresamos un String que dice Hola mundo es que nosotros tenemos que cambiar este método de next por next Line Ahora sí podemos guardar Y ejecutamos nuevamente nuestra aplicación y ahora volvemos a escribir hola Mundo perfecto y acá Nosotros tenemos el valor de Hola mundo y ahora algo importante con respecto a este método si nosotros vamos a revisarlo Nosotros sabemos que este nos va a devolver un String
el método de next Line nos devuelve un String qué es lo que pasa si nosotros necesitamos un número Como por ejemplo un byte en ese caso nosotros podemos cambiar next Line por byte y ahora si nosotros guardamos vamos a ver que este nos está arrojando un error Por qué Porque ya no estamos Obteniendo un String ahora Estamos obteniendo un byte Así que pasé cosley vamos a ejecutar nuevamente nuestra aplicación y ahora le voy a pasar el valor de 15 y vemos cómo me está mostrando 15 qué es lo que pasaría si yo vuelvo a ejecutar
mi aplicación y le paso el texto de Hola mundo aquí nosotros deberíamos ver como Java nos lanza una excepción Esta es la forma que tiene Java de indicarnos Oye estamos trabajando con un tipo de dato que no Corresponde nosotros vamos a ver las excepciones más adelante esta va a tener su sección dedicada así que no te preocupes por ahora lo que sí tienes que saber Es que cuando nosotros estemos trabajando con la clase de escáner para poder obtener datos tenemos que ser muy específicos con el tipo de dato que nosotros queremos obtener y ahora basta
de teoría Hagamos una pequeña aplicación vamos a colocar acá justamente después de haber creado nuestra clase de escáner Vamos a colocar un system.out println y vamos a indicar ingresa tu edad y vamos a colocar unos dos puntos después de esto vamos a llamar al método next byte de scanner para que así nosotros podamos leer el siguiente dato que ingresa el usuario y después de esto nosotros vamos a llamar al método de println nuevamente para indicarle al usuario tu edad es dos puntos un espacio y vamos a volver a colocar acá un system.out println y acá
nosotros Nosotros le vamos a pasar el Valor ahora guardemos y ejecutemos nuestra aplicación y ahora nos está indicando ingresa tu edad Yo ya sé que es lo que tengo que ingresar ya no voy a ingresar cualquier cosa Ahora yo sé que tengo que ingresar mi edad mi edad es 25 y no no es 25 pero da lo mismo y ahora sí me está indicando el texto de T edad es 25 Entonces lo que ustedes deberían hacer a diferencia mía es escribir bien entonces colocan acá tu edad es 25 y ahora si Ejecutan ingresa a tu
edad 25 y Ahora sí van a ver el texto bien escrito que es tu edad es 25 y de esta manera es como nosotros podemos obtener datos del usuario ya en el siguiente video ya podemos empezar a realizar ejercicios con una aplicación que utiliza la terminal para poder recibir datos del usuario Vamos a continuar con nuestro primer ejercicio de Java vamos a construir una calculadora es fácil es sencilla Ya lo sé tienes que tener un poco de paciencia lo que vamos a hacer Ahora es solamente practicar lo aprendido Y a medida que vayamos agregando más
conocimiento a nuestro repertorio va a aumentar la dificultad de los ejercicios Así que vamos a eso vamos a crear una calculadora acá vamos a escribir crear una calculadora que reciba dos números y luego imprima el resultado de la suma de estos dos números Recuerda que acá tú también tienes que indicarle al usuario qué es lo que tiene que ingresar No le vayas a Dejar solamente en blanco ahí esperando a que alguien ingrese algo no indícale ingrese el primer número después que ingrese el segundo número y después indícale el resultado de la suma es el siguiente
Ahora sí Date un par de minutos para poder resolver este ejercicio ponle pausa a este video y continúa para ver después mi solución Vamos a continuar viendo ahora mi solución están listo 3 2 1 comenzamos nos vamos a devolver acá y yo lo que voy A hacer es Eliminar todos estos comentarios y lo primero que quiero hacer es indicarle al usuario de qué se trata mi aplicación Así que voy a utilizar un print Ln para poder explicarle que esta es una aplicación de calculadora Esta es una aplicación de calculadora vamos a colocar nuevamente un print
Ln ingrese el primer número vamos a colocar unos dos puntos y ahora lo que vamos a hacer es generar una instancia de nuestra clase de scanner Así que acá vamos a colocar Scanner al nombre de la variable le vamos a dar Scanner y Esto va a ser igual a New Scanner y Recuerden que también tenemos que pasarle desde donde nosotros vamos a leer y en este caso va a ser desde System in perfecto acá nosotros vemos que tenemos el nombre de la clase en rojo y si nosotros colocamos el mouse encima nos va a indicar
que no puede resolver este símbolo Así que para nosotros poder resolver esto vamos a Venir acá donde dice import Class o también puedes utilizar el atajo de teclado yo voy a pinchar acá solamente vamos a sacar el zoom y ahora podemos ver cómo se ha importado la clase acá en la primera línea Vamos a continuar ahora vamos a crear una variable tipo int la cual se va a llamar valor y Esto va a ser igual a Scanner next in después de esto tenemos que indicarle al usuario que tiene que ingresar el siguiente número Así que
acá Volvemos a utilizar nuestro snippet de s y vamos a indicar ingrese el segundo número dos puntos Vamos a continuar ahora declarando otra variable de tipo int y se va a llamar valor b y Esto va a ser igual a Scanner next int ahora podemos llamar nuevamente a nuestro snippet de s y le vamos a indicar al usuario un mensaje indicando que este es el resultado de una suma Así que acá vamos a colocar el resultado de la suma es dos puntos y vamos a presionar un par De veces enter para que se alcance ver
mejor el código que escribí que se encontraba Detrás de mi cámara perfecto y acá es donde volvemos a utilizar nuestro snippet y le vamos a indicar el valor de la suma que en este caso es valor a más valor B vamos a guardar y vamos a ejecutar nuestra aplicación Así que ejecutamos Aquí vemos que nos está indicando Esta es una aplicación de calculadora ingresa el primer número Yo le voy a indicar que va a ser 15 ingresa El segundo número le voy a indicar 33 y el resultado de la suma es 48 y este ha
sido nuestro primer ejercicio Espero que te haya gustado ahora vamos a continuar con un par de videos más afinando un par de detalles de lo que ya hemos visto hasta ahora vamos a continuar hablando de los tipos por referencia y también los tipos primitivos Nosotros hemos visto hasta ahora los tipos primitivos y también hemos visto los tipos por referencia Pero exactamente qué es lo que significa esto para que podamos entenderlo Mejor vamos a partir con un ejemplo vamos a crear un entero que se va a llamar a y va a tener el valor de 15
y luego yo voy a crear otro entero que se va a llamar b y va a ser igual a a después lo que yo voy a hacer es cambiar este valor de B por 33 y finalmente vamos a imprimir el valor de a vamos a ver línea línea Qué es lo que está pasando acá estamos de declarando una variable de tipo entero Que se llama a y le estamos asignando el valor de 15 entonces a vale 15 después creamos una nueva variable que se llama b y le estamos asignando el valor de a Por ende
ahora B vale lo que vale a Y en este caso es 15 pero luego lo que estamos haciendo nosotros es tomando esta variable que se creó a partir del valor que se encontraba en a y le estamos cambiando el valor a 33 qué crees que va a ocurrir ahora vamos a verlo vamos a ejecutar nuestra Aplicación y vemos que el valor de este sigue siendo 15 Este es el comportamiento que tienen las variables primitivas vamos a ver ahora las variables por referencia vamos a eliminar absolutamente todo esto y vamos a hacer uso de una clase
que existe en Java que no tenías Por qué conocerla esto solamente para mostrarte el comportamiento y la clase se llama Point y no sirve para que nosotros podamos escribir puntos dentro de un eje Cartesiano vamos a presionar enter acá como podemos ver acá arriba se está cortando y vamos a declarar una variable que se va a llamar Point y esta se va a crear a partir de la clase Point en este momento lo que estamos haciendo nosotros es crear una nueva instancia de la clase de Point recuerda que las clases vendrían siendo algo así como
el plano de construcción de una casa y la instancia que en este caso es Point es la casa ya construida Y dentro de Java Nosotros le tenemos que indicar a la izquierda qué plano se está utilizando para poder crear esta casa para ser más específicos le vamos a indicar que esta se llama Point 1 ahora vamos a crear otra variable también en base a Point pero esta se va a llamar Point 2 y esta Va a ser igual no a una nueva copia sino que esta Va a ser igual a Point 1 ahora lo que
nosotros vamos a hacer es tomar Point 2 y le vamos a cambiar un valor a una de sus propiedades si lo que te Estoy mostrando ahora no lo entiendes no importa lo que sí tienes que saber es que los objetos tienen propiedades las cuales tú las agrupas de una manera que sean lógicas como por ejemplo en este caso nosotros tenemos la propiedad de x y la propiedad de I Y si nosotros queremos acceder a estas propiedades tenemos que hacerlo con un punto Entonces yo ahora quiero decir que voy a cambiar el valor de X y
le voy a indicar que este va a valer 15 ahora vamos a Imprimir el punto número uno entonces Fíjate en lo que estamos haciendo acá Nosotros hemos creado una nueva instancia de la clase de Point y se la asignamos a una variable que se llama Point 1 después nosotros creamos una variable que se llama Point 2 Y esta es igual a Point 1 y después a Point 2 2 nosotros le estamos cambiando una propiedad que se llama x se la estamos cambiando por 15 entonces cuando nosotros imprimamos ahora Point 1 qué Crees que va a
pasar va a tener esta propiedad de X con el valor de 15 o va a tener su valor inicial que en este caso es cer0 vamos a verlo inmediatamente Así que vamos a guardar y vamos a ejecutar nuestra aplicación y ahora podemos ver que nuestro punto el punto número uno que fue el que no modificamos vemos que su eje x tiene el valor de 15 Entonces qué es lo que está pasando acá y esta es la gran diferencia que tienen las variables primitivas de las variables Por referencia o en este caso son los tipos primitivos
y los tipos por referencia te lo voy a explicar un poquito más abajo perfecto para tener un espacio más de pizarra aquí cada vez que nosotros estamos creando variables esta variable va a ir a parar a la memoria RAM vamos a representar la memoria RAM como si esta fuese una red de pescar entonces acá nosotros vamos a tener un par de columnas y un par de filas vamos a suponer que esta memoria RAM se Encuentra completa hasta acá Entonces yo Acabo de crear una variable que se llama por ejemplo int es un intero y se
llama a la cual tiene el valor de cco Entonces mi variable vamos a cambiar el color mi variable de a vale 5co es igual a 5 entonces lo que vamos a hacer ahora es colocar aquí dentro de este bloque de memoria que nosotros estamos viendo acá el valor de cco dentro de tu memoria RAM se encuentra almacenado el valor de cinco vamos a hacer lo mismo ahora con Una variable b y a esta le vamos a asignar el valor de a Ahora cuando nosotros vayamos a colocar esta variable dentro de la memoria RAM supongamos que
la vamos a colocar aquí aquí nosotros también vamos a dejar el valor de 5 entonces si yo después modifico mi variable de B cambiándole el valor a tres por ejemplo lo que va a ocurrir Es que este bloque que aparece acá se va a eliminar vamos a tacharlo y le vamos a colocar ahora el valor por ejemplo creo Que te dije tres pongámosle tres pero esto no ocurre así con los objetos o con las variables de tipo de referencia vamos a eliminar esto de acá cuando nosotros creamos una variable de tipo de referencia como en
este caso era Point nosotros no vamos a ir a guardar el objeto completo acá dentro de este espacio en la memoria lo que nosotros vamos a hacer es almacenar una dirección un espacio físico en la memoria la cual se va a encargar de contener todas las Cosas que construyen a este objeto de Point Entonces vamos a suponer que se va guardar una dirección 1a y este 1a va a hacer referencia al objeto pero que ese objeto se encuentra en otro lado vamos a suponer que se encuentra por aquí perdido dentro del bloque de memoria que
nosotros no alcanzamos a terminar ahora lo que vamos a hacer es crear otro punto vamos a llamarlo p2 y este lo vamos a crear a partir de Point en ese caso lo que nosotros vamos a hacer no es crear Una nueva variable o un nuevo objeto aquí dentro de esta celda no lo que nosotros vamos a hacer en este caso es guardar dar un espacio en la memoria Exactamente igual que Point Entonces vamos a suponer que ahora la dirección en memoria se llama 1 a Entonces qué está ocurriendo ambas variables p2 y Point están apuntando
al mismo espacio en memoria que se encuentra en algún otro lado entonces si yo modifico Point O si Yo modifico p2 en verdad no estoy Modificando el espacio en memoria sino que estoy modificando el objeto que se encuentra en otro lado porque Java lo que va a hacer es tomar este espacio en memoria para saber ver dónde se encuentra y lo va a ir a buscar por aquí y lo mismo va a pasar con Point en el caso que nosotros queramos modificarlo va a ver Oye dónde se encuentra Ah Esta es la dirección entonces se
encuentra por acá y cada vez que nosotros realicemos una modificación ya sea a Point o ap2 vamos a realizar la modificación aquí donde se encuentra el objeto almacenado Esta es la principal diferencia entre los tipos de datos por referencia y los tipos de datos primitivos pero algo importante antes que nosotros nos vayamos van a existir tipos de datos de referencia que van a ser inmutables Qué quiere decir esto que cada vez que nosotros realicemos una operación sobre este nos va a devolver una nueva instancia del objeto Por ende Nos va a devolver otra referencia u
otra variable que apunta a otro espacio en memoria como podría ser por ejemplo con el tipo de dato String vamos nosotros a crear un String ahora vamos a crear un String el cual se llama a y se va a crear en base a New String y vamos a decir que se llama Hola mundo Recuerda que esto es redundante pero para nuestro ejemplo de ahora es para poder ser muy explícitos que los strings son tipos de dato de referencia ahora lo que nosotros Vamos a hacer es crear un String B que va a ser igual a
String a y vamos a crear otro String c que va a ser igual a a punto to uppercase vamos a transformar todo este texto en mayúsculas y ahora lo que vamos a hacer es imprimir la variable A qué crees que va a ocurrir vamos a guardar y vamos a ejecutar en este caso tenemos exactamente el mismo texto el de Hola mundo que fue el que nosotros escribimos justamente al comienzo de nuestro archivo acá entonces Este método de tu uppercase no está modificando mi variable de a lo que está haciendo es que me está devolviendo un
nuevo String el cual se le está asignando a c Entonces ahora si nosotros vamos a imprimir c guardamos y ejecutamos vemos ahora que sí me está devolviendo el String de Hola mundo todo con mayúsculas por qué esto es importante porque por lo general cuando nosotros estemos trabajando con objetos si nosotros lo modificamos el objeto Mismo se va a modificar a menos de que el método que nosotros estemos llamando como por ejemplo acá en tu uppercase sea inmutable y Cómo podemos saber nosotros es que un método es inmutable o no realizando esta misma operación si Nosotros
llamamos al método y este nos devuelve una nueva variable y luego si nosotros imprimimos en este caso a o c vemos que los valores son distintos en ese caso es inmutable Vamos a continuar viendo una Nueva funcionalidad que implementó Java el 2018 digo nuevo porque la verdad es que este método para poder declarar variables no existía antiguamente y por lo general cada vez que tú veas los tutoriales o los cursos no te van a enseñar esto y estoy hablando de la palabra reservada bar cuando yo utilizo la palabra reservada de bar Yo le voy a
indicar a Java que yo quiero que este infiera el tipo y lo va a inferir dependiendo del tipo que se encuentre a La derecha por ejemplo yo lo que voy a hacer hacer ahora es declarar el String de Hola mundo y ahora si yo coloco el mouse encima de X vamos a ver que este es de tipo String vamos a cambiar ahora el texto de Hola mundo por 45 vamos a guardar y volvemos a colocar el mouse encima y vemos que ahora me está indicando que la variable es de tipo int algunos desarrolladores te van
a decir que es mejor utilizar var ya que hace que el código sea más legible otros te Van a decir que es mala práctica porque siempre deberías estar declarando el tipo de variable la verdad es que aquí la decisión va a ser tuya o del equipo de desarrolladores con el cual estés trabajando pero para uso de este curso puedes utilizar cualquiera de los dos siempre y cuando el código te funcione si no te funciona en ese caso lo mejor es que hagas exactamente lo que estoy haciendo yo comenzamos esta sección hablando del Control de flujo
en específico vamos a hablar sobre los operadores de comparación estos nos van a servir en un futuro para que podamos tomar decisiones en nuestro código y así ver Qué porción de código vamos a ejecutar dependiendo de qué es lo que está ocurriendo Así que vamos a ver eso inmediatamente voy a aprovechar de Eliminar esta línea de acá que se me quedó de la clase pasada y ahora sí podemos empezar vamos a declarar un entero el cual se va a Llamar a y este va a ser igual a 15 y vamos a declarar otro que se
va a llamar b y este va a ser igual a 10 y ahora nosotros vamos a empezar a utilizar los operadores de comparación para eso vamos a hacer un print Ln Y acá es donde los vamos a empezar a comparar la primera comparación que nosotros vamos a hacer es si es que a y y b son iguales aquí es muy importante que no confundas estos operadores de comparación los dos símbolos de igual con el símbolo de Igual que nosotros utilizamos para asignarle valor a las variables en concreto lo que te estoy diciendo es que no
utilices uno para poder comparar Este es un típico error que realizan los desarrolladores que están recién empezando es muy importante que utilizas los dos y esto lo que va a hacer en concreto es comparar si es que dos variables son exact exactamente iguales en este caso nosotros tenemos a a y b esta vale 15 y la otra vale 10 y Por Ende esto no nos debería arrojar verdadero todos los operadores de comparación nos van a devolver un bullan Así que ahora lo que nosotros vamos a hacer es guardar y ejecutar nuestra aplicación y acá nosotros
podemos ver el valor de falso que finalmente eso es lo que nosotros nos estábamos esperando ya que si no nos debería devolver verdadero pero vamos a cambiar esto un poquito vamos a agregar otro operador también de comparación Ahora sí y vamos a preguntar Si es que a es distinto de B fíjate que acá estoy utilizando un operador que se parece lo único que estoy haciendo Es que le estoy agregando el símbolo de exclamación antes del símbolo de igualdad esto significa distinto a Entonces si es que nosotros ahora guardamos y ejecutamos nuestra aplicación vemos que nos
devuelve false y después nos devuelve true Vamos a continuar ahora con el siguiente operador de comparación volvemos a Utilizar nuestro snippet pero ahora nosotros vamos a preguntar si es que a es mayor que B vamos a guardar y vamos a ejecutar nuestra aplicación y vemos que nos está devolviendo el valor de true algo importante este operador de comparación el de a mayor que B nos va a devolver true si y solo si en este caso a Es mayor que B Por ejemplo si es que estos fuesen iguales Como por ejemplo 10 y 10 en este
caso me va a arrojar falso voy a guardar y voy a ejecutar de nuevo Como puedes ver ahora me está devolviendo justamente falso aquí al final si yo quisiera que en este caso me devuelva true lo que puedo hacer es utilizar este mismo operador de comparación pero también le agrego el símbolo de igualdad a la derecha aquí lo que va a hacer es evaluar si es que los valores son iguales o si es que el de la izquierda Es mayor que el de la derecha Ahora yo lo que voy a hacer es guardar y voy
a ejecutar como puedes ver aquí Estoy teniendo el valor de true pero si es que yo cambio el valor de a y lo vuelvo a dejar en 15 y vuelvo a ejecutar mi aplicación vamos a ver que me sigue mostrando true y es esto es porque 10 es mayor o igual a 10 sí es mayor o igual y 15 es mayor o igual a 10 Sí también es mayor o igual a 10 Ahora estas mismas operaciones nosotros la podemos hacer pero a la inversa en lugar de preguntar mayor que nosotros podemos preguntar menor que vamos
a cambiar los dos Símbolos y vamos a guardar vamos a ejecutar nuestra aplicación y ahora podemos ver que me está devolviendo dos veces falso y por qué me está devolviendo dos veces falso porque 15 no es menor que b y 15 tampoco es menor igual ig a b que en este caso B es 10 Pero qué es lo que pasaría si nosotros cambiamos el a ahora por 10 vamos a guardar y lo vamos a ejecutar ahora me está devolviendo true Y esto es porque 10 es menor o igual que B pero Por ende Esta operación
que nosotros también tenemos acá arriba también nos devolvería true Así que ahí es donde tú tienes que tener mucho ojo de cuál de estas dos tú vas a utilizar dependiendo del contexto Y esto es todo lo que necesitas saber sobre los operadores de comparación a continuación vamos a ver los operadores lógicos en este video Vamos a continuar viendo los operadores lógicos para eso nos vamos a devolver aquí al escritorio y Vamos a tener que declarar un par de variables vamos a declarar un bullan que se va a llamar a y este va a ser igual
a true y luego vamos a crear otro bullan que va a ser B pero este va a ser igual a falso el primer operador lógico que nosotros vamos a ver es el operador lógico or el operador lógico or se utiliza para que nosotros podamos crear nuevas variables variables O también para que podamos evaluar en algo estos siempre nos van a devolver o true o False Entonces cómo se utilizaría yo lo que quiero hacer es devolver true en el caso de que a sea true o en el caso de que B sea true esto lo que
va a hacer es asignarle a la variable de c el valor de true y la razón por la cual ocurre esto es porque el operador lógico de or en Java se ejecuta de la siguiente manera primero va a evaluar la variable que se encuentra acá a la izquierda la cual es la de a y a con contiene el valor de true como este contiene el valor de true C va a valer true inmediatamente pero luego todo lo que se encuentra aquí a la derecha va a ser ignorado en el caso de que a no sea
true y sea por ejemplo falso es ahí cuando se va a empezar a evaluar lo que se encuentra hacia la derecha y en el caso que en alguno de estos casos encuentre un valor de true a c se le va a asignar el valor de true esto No necesariamente se puede ejecutar con dos variables nosotros podríamos colocar acá por ejemplo otro false Después otro false y después eventualmente un true Ahora yo sé que estos valores te van a devolver falso falso y true esto es solamente para mostrarte como ejemplo de cómo nosotros lo podríamos implementar
pero técnicamente acá nosotros podríamos colocar variables podríamos colocar un d un e y así sucesivamente ahora lo voy a volver a dejar como esto se encontraba antes que vendría siendo el resultado de la operación de a or B ahora vamos a ver El operador lógico de and para es eso vamos a volver a crear un bullan pero este se va a llamar d y acá lo que nosotros vamos a hacer es utilizar dos veces el símbolo de armant para poder comparar estas dos variables en el primer caso nosotros teníamos estas dos barritas paralelas pero en
el caso del operador de and nosotros tenemos dos veces el símbolo de ent entonces recuerda el primero es el operador lógico de or y en el segundo caso Este Es el operador lógico de and y and se va a ejecutar Exactamente igual que lo operador lógico de or va a ir desde la izquierda hacia la derecha pero en lugar de estar buscando constantemente un true este lo que va a hacer es esperar a que aparezca el primer valor de falso Entonces si es que a llegase a ser falso se va a ignorar todo lo que
se encuentra aquí a la derecha y luego a d se le va a asignar el valor de falso por el contrario si es que a valiera true en Ese caso Va a continuar con la operación de la derecha hasta que termine de evaluar todo lo que se encuentra a la derecha y si todos devolvieron true en ese caso d va a tener el valor de true ahora nosotros Dentro de este ejemplo tenemos un true y un false Por ende este d nos va a devolver false esto en contraste con el operador lógico de or c
nos va a devolver true Por qué Porque al menos uno de estos es true vamos a imprimir Ahora ambos valores vamos a Imprimir c y luego vamos a imprimir d guardemos y ejecutemos nuestra aplicación y como puedes ver aquí nosot nosotros tenemos los valores de true y también el valor de false y antes de pasar a ver ejemplos de la vida real vamos a ver el último operador lógico que es el operador lógico not el operador lógico de not lo que hace es que invierte un valor que ya se encontraba declarado Y en este caso
lo que hace es invertir los valores boolean Por ejemplo acá yo tengo un boolean que tiene el valor de true yo lo que voy a hacer es invertir su valor ahora entonces vamos a declarar otro bullan que voy indicar que se va a llamar x y Esto va a ser Exactamente igual a not a y finalizamos con un punto y coma Fíjate muy bien en la anotación acá en este caso lo que estamos haciendo es colocar el símbolo de exclamación justamente a la izquierda de la variable que nosotros queremos negar y en este caso lo
que va A hacer es invertir su valor si es que su valor era true lo que va a hacer es transformarla a falso y si es que es falso la va a transformar a true vamos a ver ahora qué es lo que esto arroja vamos a colocar nuevamente nuestro snipe de s le vamos a pasar x guardamos y ejecutamos nuestra aplicación y acá nosotros vemos cómo nos devuelve el valor de falso ahora vamos a ver un par de ejemplos de la vida real en los cuales nos van a servir estos operadores Lógicos Así que voy
a presionar un par de veces enter y voy a bajar un poquito más nuestro primer ejemplo vendría siendo detectar si es que una persona es adulta o en este caso mayor de 18 años aquí yo le voy a colocar el valor de true también podemos detectar si es que este usuario se encuentra activo o si por alguna razón este usuario Ha desactivado su cuenta Así que creamos una variable que se llame is active y yo le voy a indicar el valor de falso También podemos preguntar si es que este usuario es un usuario Premium o
un usuario de pago Así que acá nosotros podemos hacerlo con un is Premium y le vamos a pasar el valor de true También nosotros podemos detectar el estado por ejemplo del control de Play que yo les estaba mostrando antes entonces podemos detectar con un is on para saber si este control de PlayStation se encuentra encendido o no y ahora vamos a hacer lo siguiente vamos a suponer que nosotros Tenemos activada una promoción que en este caso va a ser para la academia Hola mundo y nosotros vamos a declarar un String el cual se va a
llamar cupón y el cupón va a contener el texto de Chanchito feliz ahora lo que nosotros queremos hacer es verificar si es que el usuario tiene un cupón válido Entonces vamos a preguntar acá con el operador lógico de or si es que alguno de los cupones que tiene el usuario que en este caso es el de Chanchito feliz Es válido Así que vamos a crear una variable que se va a llamar promo y esta Va a ser igual a lo siguiente cupón punto equals y acá vamos a preguntar por los cupones que ya hemos creado
por ejemplo puede ser Ultimate Java Entonces si es que el texto de cupón es igual a Ultimate Java Esto me va a devolver true en este caso el valor es falso porque nosotros sabemos que es Chanchito feliz así que vamos a colocar el operador lógico de or y volvemos a escribir acá cupon equals y Si le podde podemos pasar acá el valor de Chanchito feliz Entonces ya con este operador lógico de or nosotros ya sabemos que la promo va a tener el valor de true Por qué Porque Nosotros sabemos que el cupón es Chanchito feliz
y nosotros estamos indicando justamente acá dentro de este operador lógico de or que uno de los cupones válidos es el cupón de Chanchito feliz ahora vamos a suponer que nosotros hemos creado una tienda donde un producto en específico Solamente lo puede comprar un adulto como podría ser por ejemplo un videojuego que se encuentra en promoción pero este solamente es para mayores de 18 años y se encuentra restringido solamente lo pueden comprar usuarios mayores de 18 años entonces vamos a preguntar acá creando una nueva variable bullan can purchase o si es que este usuario puede comprar
y para eso nosotros tenemos que preguntar si es que este es un adulto también podemos Preguntar si es que este usuario se encuentra activo y también podríamos crear una nueva variable la cual vendría siendo has funds O sea si es que el usuario tiene fondos Por supuesto que esa variable nosotros no la hemos creado Así que vamos a agregarla ahora vamos a crear un boolean has funds y le vamos a indicar el valor acá de true y ahora si nosotros guardamos después eventualmente podríamos imprimir estas variables pero yo creo que con esto ya te quedó
Bastante Claro que los operadores lógicos nosotros lo podemos utilizar para evaluar en una condición que nos va a permitir a nosotros poder tomar decisiones Vamos a continuar viendo la instrucción If esta le va a permitir a nuestro código ejecutar distintos caminos dependiendo de condiciones que que nosotros le pasemos Así que vamos a pasar a verla inmediatamente para eso vamos a suponer que vamos a ir al cine y lo que queremos hacer es poder ver una Película por si tú no lo sabías las películas tienen distintas clasificaciones y dependiendo de la clasificación podría ser que es
sugerido que un niño sea acompañado de un adulto o que derechamente se le niegue la entrada a menos de que este esté acompañado de un adulto o que ya derechamente no pueda entrar a ver a la película Así que vamos a hacer lo siguiente vamos a declarar un entero que se va a llamar edad y vamos a decir que Este niño tiene 8 años ahora lo que vamos a hacer nosotros es preguntar con la instrucción de If si es que este niño es mayor de 17 años si es mayor de 17 años significa que él
puede ver la película Así que acá nosotros podemos llamar printline y le vamos a indicar que puedes ver la película aquí lo único que estamos haciendo es verificar si es que esta persona tiene más de 18 años ahora y si esta persona por alguna razón no pudiese ver la película podemos Indicarle con la instrucción de els que este no puede ver la película acá le vamos a indicar no puedes ver la película ahora vamos a guardar y vamos a ejecutar nuestra aplicación y por supuesto nos está indicando que no puedes ver la película aquí lo
único que estamos haciendo es validar si es que esta persona es mayor de 18 años o no ahora vamos a agregarle un poco más de complejidad a nuestro código y lo que vamos a hacer es que justamente después De la edad vamos a asignarle también una clasificación a esta película Así que vamos vamos a crear un String que se va a llamar movie classification y Esto va a ser igual a pg pg vendría significando parental guidance o se sugiere que la persona entre con un adulto para que este lo pueda orientar existe también otra clasificación
que no es pg la cual es r18 lo que nosotros queremos hacer ahora es obtener si es que dentro de la Clasificación de la película se encuentra la letra r para así nosotros saber si debemos prohibirle o no el acceso a la película Así que para eso vamos a crear un boolean el cual se va a llamar is restricted y Esto va a ser igual a movie classification y vamos a aprovechar de llamar al método de contains y aquí es donde Nosotros le vamos a pasar la r mayúscula Entonces si la clasificación de la película
contiene una r significa que esta persona tiene Que tener por lo menos 18 años para poder ingresar a ver la película entonces aquí es donde nosotros podemos Ya empezar a cambiar nuestra lógica acá nosotros estamos preguntando si es que esta persona es mayor de 18 años o sea mayor de 17 Pero en el fondo si tiene 18 años o más y también podemos preguntar si es que esta película es restringida en el caso de ser restringida nosotros deberíamos verificar si es que esta persona se me arrancaron las teclas Ahora sí si es que esta persona
además es mayor de 18 años entonces nos quedaría algo más o menos así Si es que esta película es restringida y además eres mayor de edad en ese caso tu tú puedes pasar a ver Esta película Así que lo que vamos a hacer ahora es guardar y vamos a ejecutar nuestro código y nos está indicando que no puedes ver la película Por supuesto ya que esta persona no es mayor de edad Así que vamos a colocarle aquí un uno para que Este usuario tenga 18 años y vamos a volver a ejecutar nuestra aplicación y como
puedes ver ahora nos está indicando que esta persona sí puede ver la película ahora vamos a agregar una nueva clasificación lo que vamos a hacer ahora es indicar que esta persona tiene nuevamente 8 años pero este ya no es de clasificación erra la película que él quiere ir a ver sino que la que quiere ir a ver tiene la clasificación de rp que en este caso quiere decir la persona Tiene que tener 18 años o venir acompañada de un adulto para poder ingresar a ver Esta película Así que vamos a crear ahora una nueva palabra
nueva variable la cual va a ser un bullan y vamos a colocar acá is with adult en el fondo para saber si es que esta persona está siendo acompañada de un adulto y yo le voy a colocar el valor de true ahora lo que nosotros queremos Buscar es es si es que esta clasificación de película en lugar de Tener r contiene rp y de esta manera nosotros ya podemos empezar a cambiar un poco la lógica de nuestra aplicación yo lo primero que voy a hacer es verificar si es que la película se encuentra restringida o
no Así que si es que esta no se encuentra restringida le vamos a indicar a cualquier persona que esta puede ver la película pero si por alguna razón la película se encuentra restringida que eso es lo que nosotros sabemos que tiene porque nosotros Sabemos que es de tipo rp o sea o sea tiene que venir con un adulto vamos a preguntar otra cosa Porque si nosotros utilizando esta instrucción de els nos venimos directamente acá a no puedes ver la película Le estaríamos negando la posibilidad a personas que sean mayores de edad o que vengan acompañados
de sus padres Así que vamos a preguntar primero con la instrucción de Else If vamos a escribir acá Else como puedes ver aquí yo tengo una opción para poder agregar Else If justamente aquí aquí aparece Else If Si nosotros la seleccionamos deberíamos ver como intellij me ha agregado toda esta porción de código Entonces tenemos el If después de eso tenemos un Else If y finalmente tenemos un Else con este Else If yo le puedo preguntar una siguiente condición Entonces si la condición de este If no se cumple Java va a venir a evaluar inmediatamente la
condición que se encuentra en el Else If que viene a Continuación y aquí lo que vamos a hacer es preguntar si es que esta persona tiene más de 17 años y en el caso de que sea así vamos a indicar puedes ver la película igual ahora si nosotros guardamos y ejecutamos nuestra aplicación nos está indicando que todavía aún así no puede ver la película Y por qué no la puede ver bueno porque esta persona no es mayor de 17 años si nosotros le cambiáramos la edad aquí a 18 vamos a colocar 18 y volvemos a
Ejecutar podemos ver acá como nos indica que puede ver la película igual pero nosotros también queremos Agregar un nuevo caso que es para las personas que no sean mayores de edad pero que sí vengan acompañadas de un adulto Así que vamos a volver a agregar otro Else If justamente después de este de la línea 11 vamos a venir aquí a la línea 13 y vamos a escribir Else y luego con nuestras flechitas del teclado vamos a bajar hasta Else If y vamos a presionar Enter y aquí nosotros vamos a preguntar is with adult y en
el caso de que esta persona se encuentre con un adulto ahora le vamos a permitir la entrada al cine viene con un adulto vamos a bajar un poco puede ver la película vamos a guardar y vamos a ejecutar nuestra aplicación y aquí podemos ver que nos está indicando viene con un adulto puede ver la película ahora vamos a cambiar un poco la lógica nuevamente de nuestra aplicación vamos a subir y acá donde Dice is restricted vamos a dejar esta variable solamente para las películas que sean 100% restringidas o sea en este caso vamos a preguntar
si esta contiene solamente la letra de r pero fíjate en algo importante acá nosotros tenemos la clasificación de la película rp con el orden lógico que nosotros estamos siguiendo ahora Nosotros igual podríamos acceder a ver la película y te voy a indicar Por qué tenemos eso sí que agregar una condición acá donde se Encuentra is with adult vamos a hacer lo siguiente esto nos va a indicar que la película es restringida entonces la película es restringida o no es restringida si es que no es restringida en ese caso cualquier persona puede venir a ver la
película de todas maneras después vamos a preguntar si es que esta persona es mayor de edad eso nosotros lo podemos ver acá si la persona es mayor de edad puede pasar a ver la película de todas maneras y después nosotros podemos Preguntar si es que esta persona se encuentra con un adulto pero ojo porque ahora la película tiene clasificación R pero también Podría tener clasificación rp aquí es entonces donde nosotros tenemos que utilizar nuevamente nuestro operador lógico de and y vamos a preguntar nuevamente Si la clasificación de la película acá vamos a escribir movie classification
contiene r y p Entonces si es que esta persona viene con un adulto y además la clasificación De la película es de tipo rp entonces viene con un adulto puede ver la película si es que no contiene rp significa que esta es una película restringida Así que esta persona derechamente no podría ver la película ahora vamos a guardar vamos a ejecutar nuestra aplicación y vemos que nos indica viene con un adulto puede ver la película pero vamos a aprovechar ahora de cambiar la clasificación de nuestra película le vamos a colocar nuevamente R18 guardamos y ejecutamos
aquí nos está indicando no puedes ver la película Por supuesto estamos bien en este caso y ahora lo que vamos a hacer es indicarle mayoría de edad a esta persona así que le vamos a pasar acá el valor de 18 y vamos a volver a ejecutar nuestra aplicación y nos indica que puedes ver la película igual o sea Esta película es restringida pero como la persona es mayor de 18 años de todas maneras puede ver la película Así que vamos a repasar La instrucción de If Nosotros con la palabra de If podemos indicarle a Java
que queremos que evalúe la condición que se encuentra acá si esa condición devuelve true va a ejecutar lo que se encuentra dentro de estos paréntesis de llaves si Es que esto llegase a ser falso lo que va a ocurrir es que Java va a venir a ejecutar el Else If que viene si es que no existiera ningún Else If va a pasar al Else pero si tampoco existiera el Else en ese caso va a salir De la ejecución Ahora nos vamos a devolver aquí al Else If vamos a preguntar acá si es que esto es
true si es que esto llegas a ser true en ese caso se va a ejecutar lo que se encuentra dentro de estos paréntesis de llaves en el caso de que sea falso va a pasar al siguiente Else If Y así sucesivamente hasta que ya no quede absolutamente ningún Else If y hayamos pasado por todas esas líneas de código ya que vimos If en este video ya Podemos empezar a hablar del alcance dentro de Java para eso nos vamos a devolver aquí a nuestro escritorio y vamos a crear un String en este caso el String se
va a llamar mensaje y este va a contener el texto de seco para programar o en otras palabras una persona con mucha habilidad para programar si es que no vienes de chile o si es que no conoces la expresión Pero en fin estoy vagando ahora nosotros vamos a colocar un If y vamos a colocar El valor de true esto lo que va a hacer es que va a forzar que nuestro código que se encuentre Dentro de este If se esté siempre ejecutando por supuesto que en la vida real nosotros nunca vamos a ver un If
true o un If false no tendría sentido Pero esto es meramente para poder explicarte mejor qué es lo que va a ocurrir Así que vamos a obviar el caso de que acá está el buam directamente por lo general debería haber una variable pero para el caso de este video no nos Importa Entonces vamos a hacer nosotros lo siguiente vamos a hacer un un print Ln de mensaje y luego vamos a hacer exactamente lo mismo acá abajo donde vamos a imprimir fin de aplicación ahora vamos a guardar y vamos a ejecutar nuestra Aplicación como puedes ver
me está apareciendo acá seco para programar entonces la variable nosotros podemos acceder a ella dentro del If vamos a ver qué es lo que ocurre en caso contrario vamos a suponer ahora que nosotros en Lugar de crear una variable justamente Al mismo nivel que nuestro public static void Main lo vamos a crear Dentro de este If entonces acá nosotros vamos a crear nuevamente un String pero este se va a llamar texto para diferenciarlo de mensaje y va a contener el texto de Hola mundo nosotros además de imprimirlo acá vamos a cambiar este mensaje por texto
vamos a imprimirlo justamente aquí abajo vamos a colocar acá nuevamente Un s y vamos a pasar texto y vamos a guardar Fíjate en lo que está ocurriendo Java me está marcando esto en color rojo lo que significa que no puede acceder a esta variable qué es lo que significa esto en Java cada vez que nosotros queremos declarar una variable tiene que estar declarada dentro del mismo bloque de código en el cual nosotros queremos acceder Por ejemplo si nosotros creamos esta variable de texto Dentro de este If nosotros podríamos acceder a esta misma variable de texto
Pero dentro de este Bloque no afuera de esta pero también nosotros podríamos acceder a esta misma si nosotros mi snippet para poder imprimir y le vamos a pasar acá texto acá yo también puedo acceder a esta variable porque esta se encuentra a un nivel más adentro que donde fue declarada Entonces el alcance de las variables siempre va a ser de izquierda hacia la derecha en otras palabras yo aquí tengo declarada mi variable de mensaje pero en el Alcance del método Main Por ende como se encuentran el nivel de más arriba yo voy a poder acceder
Dentro de este bloque de código y también dentro del bloque de código del segundo If que yo coloqué pero no va a ser así con la variable de texto esta variable de texto yo solamente voy a poder acceder a esta donde se encuentre este bloque de código de estas paréntesis de llaves o también en otro bloque de código que se encuentre más adentro pero yo no voy a Poder acceder a él fuera de ese bloque de código o sea aquí yo no puedo acceder ni acá tampoco voy a poder acceder si yo quisiera poder acceder
a una variable que se encuentre acá dentro Yo lo que puedo hacer es un pequeño hack para poder realizar esta misma operación yo lo que voy a hacer es ahora eliminar absolutamente todo esto voy a seguir dejando mi variable de mensaje como puedes ver esta yo la estoy declarando en el primer nivel Pero dentro de este If yo lo que voy a hacer es modificarla entonces acá yo voy a colocar mensaje y Esto va a ser igual a Hola mundo Ahora puedo tomar mi variable de mensaje y la voy a colocar aquí ahora sí vamos
a poder guardar y vamos a poder ejecutar nuestra aplicación y como puedes ver aquí me está apareciendo el texto de Hola mundo Por ende si yo quiero poder acceder a una variable o le quiero asignar un valor a esta variable dentro de algún If o dentro de la cualquiera de Las instrucciones que nosotros vamos a ver en un futuro tengo que declararla primero antes más arriba para luego yo modificarla dentro del siguiente bloque de código y de esta manera voy a poder acceder a esta en el alcance superior Vamos a continuar en este video hablando
del operador ternario para eso te voy a mostrar un par de ejemplos de cómo se escribe el código sin operador ternario y luego lo vamos a ir mejorando poco a poco hasta llegar al operador Ternario Así que vamos a comenzar lo primero va a ser definir un entero que se va a llamar edad y este va a ser igual a 15 años después de esto nosotros vamos a preguntar si es que esta persona es mayor de edad y en el caso de ser mayor de edad nosotros vamos a imprimir el mensaje esta persona puede votar
y en el caso de que esta persona no sea mayor de edad le vamos a mostrar otro mensaje el cual va a ser esta persona no puede votar hasta el momento todo bien lo que Vamos a hacer nosotros es guardar ahora y ejecutar nuestra aplicación y como puedes ver esta persona por supuesto que no puede votar porque es menor de edad ahora vamos a hacer una pequeña variación del código como puedes ver lo que nosotros estamos haciendo acá es creando String literales y luego se los estamos pasando a esta función de system.out println vamos a
sacar este mensaje vamos a crear un String que se va a llamar mensaje y por supuesto que Lo tengo que hacer con la s con mayúscula y acá le vamos a indicar que comienza como un String vacío Entonces nosotros en lugar de llamar a system.out println en cada una de estas secciones de lif lo que vamos a hacer es asignárseles variable de mensaje este String así nos va a quedar un poquito más corto de leer y también se entiende que lo que nos interesa más que nada dentro de esta línea de código es Sencillamente indicar
un mensaje ahora Lo que nosotros sí podemos hacer al final de este código podemos llamar ahora a nuestro método de print Ln para imprimir este mensaje vamos a ejecutar el código y como podemos ver todavía nos está indicando que esta persona no puede votar ahora vamos a aprovechar de eliminar código que la verdad es que no es tan necesario nosotros podríamos ahorrarnos en este caso esta sintaxis del els si nosotros Sencillamente tomáramos este mensaje de esta persona No puede votar se lo asignamos como valor inicial al Stream y solamente en el caso de que esta
persona sea mayor de edad le cambiamos el mensaje a esta persona puede votar ahora vamos a guardar y vamos a volver a ejecutar y como podemos ver esta persona todavía no puede votar esto es como la gran mayoría de los desarrolladores resolvería un problema como este lo que vamos a hacer nosotros es utilizando el operador ternario asignarle un mensaje a esta Variable de mensaje pero de una manera bastante más corta Así que vamos a tomar todo esto y lo vamos a eliminar y acá donde está mensaje vamos a preguntar inmediatamente si es que la edad
de esta persona es mayor de 17 años en el caso de de que sea así vamos a colocar el símbolo de pregunta Y acá es donde Nosotros le vamos a pasar el String que nos interesa en el caso de que eso evalúen falso vamos a colocar unos dos puntos y lo que se encuentra aquí a la Derecha es lo que se le va a asignar a esta variable de mensaje entonces acá le vamos a indicar el texto de puede votar y vamos a aprovechar de cambiar esto de acá a Sencillamente no puede votar pero para
que me aparezca en la pantalla ahora vamos a guardar y vamos a ejecutar nuestra aplicación nuevamente ejecutamos y nos está indicando no puede votar sin embargo si es que nosotros cambiamos la edad de esta persona a por ejemplo 25 y volvemos a ejecutar nuestra aplicación Vemos ahora que nos está indicando puede votar de esta manera nosotros podemos simplificar nuestro código utilizando los operadores ternarios Vamos a continuar hablando de la instrucción switch esta cumple una función bastante similar a la instrucción de If pero es un poco más concisa algunos desarrolladores prefieren utilizar los If y otros
desarrolladores prefieren utilizar switch tú utiliza la que más te guste y La que mejor se dé para el caso que te toque a ti entonces lo primero que vamos a hacer nosotros ahora es declarar un String yo voy a indicar que este String se va a llamar action y voy a indicar que la acción que quiero que ejecute sea la de agregar nosotros Por supuesto que cuando estamos trabajando No vamos a recibir las acciones de esta manera van a llegar ya sea del usuario o van a llegar de otra parte de la aplicación pero para
explicar explicar Este ejemplo La verdad es que da un poco lo mismo Así es que sigue conmigo Vamos a colocar acá switch y después de eso vamos a colocar action aquí es donde nosotros tenemos que preguntar qué tipo de acción o qué tipo de valor es el que está recibiendo el switch Por ejemplo yo lo que quiero hacer es capturar el caso cuando yo esté eliminando por ejemplo algún recurso entonces yo voy a colocar acá Case y luego voy a colocar el String de eliminar esto quiere decir que cuando Action valga eliminar se va a
ejecutar lo que yo coloque aquí ahora nosotros podemos colocar un sou eliminando recurso esto por supuesto que nunca jamás se va a ejecutar ya que action en este caso vale agregar Así que vamos a aprovechar de agregar también el caso para agregar Así es que justamente un poco antes vamos a agregar el Case de agregar y acá nosotros podemos colocar nuevamente nuestro print Ln y voy a escribir acá agregando y ahora algo Importante cada vez que nosotros queremos terminar la instrucción que se va a ejecutar dentro del Case ten tenemos que agregar la instrucción de
break y esto lo que va a hacer es indicarle a este Case el código que tú tienes que ejecutar es hasta acá si no va a continuar ejecutando lo que se encuentra más abajo te lo voy a mostrar vamos a eliminar esto vamos a guardar y vamos a ejecutar nuestra Aplicación como puedes ver me está mostrando agregando y También eliminando recurso eso no es lo que nosotros queremos Así que yo voy a colocar acá el break finalizando con el punto y coma vamos a aprovechar de agregar también el break acá y ahora podemos os guardar
y podemos ejecutar nuevamente nuestra aplicación y vemos que nos aparece nuevamente agregando pero ya no nos aparece eliminando recurso ahora qué es lo que ocurriría si por alguna razón la acción no es ni agregar ni tampoco es eliminar por Ejemplo supongamos que es listar y no se encuentra definida dentro de las acciones si yo ejecuto esto vamos a ver que no me está mostrando absolutamente nada es en este caso cuando nosotros Podemos agregar una acción por defecto Así es que voy a agregar acá default dos puntos y acá nosotros podemos indicar acción por defecto Ahora
sí podemos guardar y ejecutar nuevamente nuestra aplicación y vemos ahora que se está ejecutando esta acción por defecto Quiero que te fijes muy bien en la sintaxis de este código existen desarrolladores que van a preferir utilizar un If después seguido de un elsif y después otro elsif La verdad es que es meramente preferencia tú utiliza el que más te acomode puede ser un switch o puede ser un If con sus el [Música] sif Vamos a continuar realizando un ejercicio para que podamos soltar las manos para eso yo primero te voy a Mostrar Cómo Este funciona
y luego tú tienes que intentar deducir su funcionamiento Si no lo puedes resolver No te preocupes porque lo vamos a resolver en el video siguiente entonces la aplicación nos va a pedir a nosotros que ingresemos un número Yo voy a comenzar ingresando el número uno y vamos a ver que este nos está indicando que el número es impar Okay ya estamos viendo que nos puede mostrar los números impares vamos a ver ahora con el número Dos y vemos que me está mostrando en este momento que el número es par perfecto Vamos a continuar continuar continuos
con el tres me está indicando que el número es impar pero que este además es divisible por tres vamos a ejecutarlo de nuevo y vamos a ver qué es lo que ocurre Ahora cuando nosotros ingresamos el cuatro me está indicando que el número es par y que además Este es divisible por 4 veamos una vez más qué es lo que ocurre ahora si es que Nosotros ingresamos un número que es divisible por 3 y también es divisible por cuatro que en este caso es el número 12 presionamos enter y vamos a ver que ahora me
está indicando que el número es par pero que también es divisible por tres y también por cuatro Entonces ahora lo que tienes que hacer es lo siguiente tienes que crear un algoritmo Por supuesto que se encargue de identificar cuando los números son pares e impares además de eso dentro del mismo algoritmo Vas a tener que identificar si es que los números pueden ser divisibles por tres Y también si es que pueden ser divisibles por cuatro Y en el caso de que sean divisibles por los dos tienes que indicar en un texto que el número que
ingresó usuario es divisible por los dos Así que ahora Date un par de minutos intenta resolver este ejercicio y nos vamos a ver en el siguiente video con la [Música] solución vamos a comenzar lo primero que Nosotros vamos a necesitar en este momento es algo que nos permita poder obtener a nosotros lo que ha ingresado el usuario Así que vamos a tener que crear una instancia de la clase de escáner y esto nosotros ya lo sabemos hacer Sencillamente creamos una nueva instancia con la clase de escáner para poder indicar el tipo de dato luego el
nombre de la variable y seguido de eso utilizamos la palabra reservada de New seguido de la clase la cual queremos Instanciar y a continuación tenemos que pasarle System in para que la clase de escáner sepa de dónde tiene que obtener estos datos después le tenemos que indicar al usuario que está utilizando esta aplicación que este tiene que ingresar un número Así que vamos a escribir acá ingrese un número voy a colocar unos dos puntos y un espacio y acá es donde nosotros debemos obtener el número Así que vamos a crear una variable que puede ser
un byte yo voy a Decir que esta Va a ser un número entero y se va a llamar número y esta Va a ser igual a scann int y aquí es donde nosotros debemos empezar a crear nuestro algoritmo en esta parte lo que vamos a tener que realizar la verdad es que no es tan complicado Solamente vamos a tener que tomar este número que Nosotros acabamos de declarar acá esta variable de entero y aquí es donde nosotros vamos a tener que preguntar si es que este Número es divisible por dos y en el caso de
que sea divisible por dos con el operador de módulo y el resto sea cer0 así es como nosotros vamos a saber que este número es divisible por dos así que nos vamos a venir aquí abajo y vamos a escribir If número módulo de esto y el número dos Entonces si es que el módulo de entre número y dos es Exactamente igual a o Entonces en este caso nosotros estamos trabajando con un número par Así que acá vamos a escribir el número es Par si por el contrario el número o el resto del módulo en este
caso no fuese igual a uno significa que nos va a devolver uno así que en ese caso el número es impar Así que volvemos a utilizar acá nuestro snippet de s e indicamos acá el número es impar y con esto ya hemos resuelto la mitad de nuestro ejercicio lo que nosotros debemos hacer ahora es poder indicar si es que el número es por tres y por cuatro o por tres o por cuatro también Así que vamos a ver cómo podemos hacer esto mismo vamos a bajar un poquito más y acá nosotros vamos a volver a
colocar otro If y vamos a preguntar es que el módulo de número en tres es Exactamente igual a c Entonces nosotros vamos a imprimir el número es divisible vamos a mover la cámara para arriba por TR y luego vamos a utilizar un Else If y acá nosotros vamos a preguntar también por el módulo pero en este caso cuando nosotros dividamos por cuatro y es que El módulo en este caso es cer0 pero cuando estamos dividiendo por cuatro en ese caso el número es divisible por 4atro ahora nos faltaría tomar el caso cuando el número es
divisible tanto por tres como por cuatro y para eso nosotros deberíamos evaluar Esa condición así que tenemos que agregar otro Else If pero nos vamos a topar con un problema que te voy a mostrar después cómo se soluciona Así que acá abajo vamos a seguir bajando y acá nosotros vamos a colocar nu Nuestro Else If y vamos a preguntar si es que el módulo en este caso cuando nosotros estamos dividiendo por tres es c pero si es que además el módulo de esto cuando nosotros estamos dividiendo por 4 es 0 en el caso de que
esto sea así nosotros vamos a poder imprimir el número es divisible por 3 y por 4 perfecto ahora vamos a probar nuestra aplicación Así que vamos a ejecutar esto y vamos a empezar a ingresar números el primer número que yo voy a ingresar va a Ser el uno vemos que el número es impar volvemos a ejecutar nuestra aplicación ingreso el dos el número es par ahora vamos con los números más grandes voy a colocar acá un tres el número es impar y también el número es divisible por tres perfecto lo volvemos a ejecutar y ahora
preguntamos por cuatro y me está indicando el número es par y el número es divisible por cuatro hasta ahora todo está funcionando bien Pero qué es lo que va a ocurrir cuando nosotros ingresemos En este caso el número 12 y yo te voy a decir inmediata ente lo que va a ocurrir primero es que nos va a mostrar que el número es divisible por tres y el número es par entonces en la primera parte está bien pero no en esta parte porque es divisible por tres y también por cuatro vamos a ver el código para
ver por qué está ocurriendo esto y tú te acuerdas del video de If todo esto que nosotros hemos escrito acá se ejecuta por orden de prioridad O sea que lo primero que va A entrar a evaluar en este caso es esta condición que nosotros tenemos acá de número módulo 3 = 00 cero y el número 12 cumple con esta condición entonces no estamos haciendo algo mal entre comillas dentro de nuestro código pero lo que nosotros tenemos que hacer es que cuando ocurran este tipo de casos Siempre vamos a tener que colocar primero el caso más
específico y en este caso lo que es más específico es si es que el número es divisible por tres Y también si es que Este es divisible por cuatro Así que yo lo que voy a hacer es tomar todo esto lo voy a copiar y lo voy a pegar acá y ahora yo puedo tomar todo esto que se encuentra acá y lo voy a recortar y lo voy a pegar aquí reemplazando esto pero tengo que agregar también el Else If para que esto me funcione Entonces vamos a ver qué es lo que me está mostrando
si es que el número es divisible por tres y su módulo es igual a oer Pero además de eso Si es que el número cuando nosotros Lo dividimos por cuatro su módulo es cer0 en ese caso el número es divisible por 3 y por 4 esta sección de acá que se encuentra en el medio nosotros no la tocamos pero sí modificamos esta Así que vamos a ver qué es lo que nos está mostrando nos está diciendo si que el número cuando nosotros lo dividimos por tres es igual a o su módulo en ese caso el
número es divisible por tres Así que vamos a ver qué es lo que nos muestra esto volviendo a ejecutar nuestra Aplicación la volvemos a ejecutar Vamos a ingresar un número Yo voy a ir inmediatamente a colocar un tres vemos que el número es impar y también es divisible por tres ahora voy a ingresar cuatro el número es par y divisible por cuatro y si lo vuelvo a ejecutar y ahora escribo 12 vemos que el número es par Pero también es divisible por 3 y por 4 y y de esta manera es como nosotros cambiando el
orden de los If y de los Else If es como podemos hacer que Nuestra aplicación ejecute código más específico dependiendo del [Música] caso Vamos a continuar viendo la instrucción for para eso nos vamos a venir aquí a nuestro editor y lo primero que tenemos que hacer es construir algo que nosotros podamos iterar ya que for nos va a servir para nosotros poder iterar ya sea números o también poder iterar elementos Así que vamos a crear una array de strings que se va a llamar Textos y Esto va a ser igual a una array que va
a contener Hola mundo usuario uno y también vamos a tener a Chanchito feliz por qué no agregamos el punto y coma final y podemos pasar a la siguiente línea entonces para nosotros poder realizar un for y así poder iterar ya sea elementos o poder crear combinaciones de números tenemos que escribir for seguido de eso un abre y cierra paréntesis y vamos a colocar también un abre y cierra paréntesis de Llaves para no tener que agregarlo después y aquí justamente adentro vamos a tener que escribir lo siguiente primero es declarar una variable que nosotros vamos a
iterar Y en este caso va a ser un entero y yo voy a decir que su valor inicial va a ser el de cer0 Y por qué estoy diciendo inicial porque este valor luego va a cambiar Después yo le tengo que indicar cuál es la condición que yo quiero que este cumpla Así que yo voy a decir que quiero que Esto se ejecute siempre y cuando I sea menor que 5 después de esto vamos a indicar qué es lo que tiene que ocurrir con i para la siguiente iteración entonces acá yo le voy a indicar
un I + más quiero que este aumente en uno entonces cómo se va a ejecutar esto primero vamos a colocar acá que vamos a imprimir Hola mundo seguido de eso un espacio y para que nosotros podamos agregar también este valor de I la variable a este texto que nosotros vamos A imprimir vamos a utilizar la concatenación y la concatenación es Sencillamente colocamos un símbolo de más seguido de lo que nosotros queremos agregar al String que se encuentra aquí a la izquierda Ahora sí podemos guardar y vamos a ejecutar nuestra aplicación para que veamos qué es
lo que nos muestra y nos está mostrando Hola mundo desde el 0 1 2 hasta finalmente llegar al cuatro entonces yo te voy a explicar qué es lo que está ocurriendo lo primero Que sucede es que se declara una variable la cual su valor va a comenzar en cero Esta es la única vez que nosotros vamos a venir a leer esto después en iteraciones siguientes nos vamos a dar cuenta de que esto desaparece pero todav lo voy a dejar aquí igual para que lo podamos ver después de eso nosotros vamos a evaluar si es que
se cumple esta condición de acá y inicialmente vale 0 Así que 0 es menor que 5 Claro que sí esto nos Devuelve true Entonces como nos devuelve true pasamos a ejecutar esta porción de código que se encuentra dentro de este paréntesis de llaves y ojo con lo que acaba de ocurrir porque la instrucción de I + má que aparece acá nos la saltamos No la vamos a estar ejecutando hasta que nosotros no hayamos terminado nuestra primera iteración Entonces vamos a ejecutar esta línea de código la de sistem punto out println y esto nos va a
imprimir Hola mundo seguido del valor de I Y cuánto vale I Nosotros sabemos que vale cer0 porque ese fue el primer valor que nosotros le asignamos ahora vamos a limpiar nuestra pizarra Y acá es cuando nosotros venimos a ejecutar esta instrucción de I + + esta instrucción se ejecuta única y exclusivamente cuando nosotros llegamos aquí al final de este Ford que vendría siendo este sirad de paréntesis de llaves y ahora ya que llegamos a esa parte podemos indicar i+ más ahora y vale uno vamos a anotarlo Acá y ya no vale cer0 No no no
ahora y vale un entonces 1 es menor que 5 Claro que sí es menor que 5 y ahí es donde pasamos a ejecutar nuevamente esta línea pero Y acuérdate que ahora vale uno cuando lleguemos aquí al final o sea hayamos terminado de ejecutar todo lo que se encuentra dentro de estos paréntesis de llaves es ahí cuando volvemos a ejecutar I + más cuando volvemos a ejecutar I + más es que ahora I ya no vale un sino que I ahora es Igual a2 y Esto va a ser así sucesivamente hasta que lleguemos al final del
Loop Pero cuál es el final del Loop el final del Loop va a ser cuando I valga cco vamos a hacer un paso antes Eso sí para que haga más sentido vamos a suponer que nosotros llegamos a cuatro entonces I que vale 4 es menor que 5 Claro que sí ejecutamos Hola mundo y el número cuatro después de esto llegamos aquí al final Como llegamos acá al final nosotros tenemos que venir a ejecutar Esta línea de acá o sea no es una línea verdad es esta pequeña porción de código que aparece aquí entonces y ahora
vale cinco y aquí es donde el Loop se detiene cco es menor que cco no esto nos va a devolver false y cuando nos devuelve false es que nosotros finalmente salimos de este for y venimos aquí a la línea que viene ahora en este caso nosotros no tenemos absolutamente nada después de esto pero Podemos agregar nuevamente un system.out println para indicar que Estamos fuera del for voy a guardar y voy a volver a ejecutar mi aplicación y podemos ver acá cómo me está mostrando Hola mundo desde el cero hasta el cuatro y finalmente que estamos
fuera del for de esta manera es como nosotros podemos trabajar con el Loop for existen otros loops que nosotros vamos a ver en los videos que [Música] vienen Vamos a continuar viendo el siguiente Loop que es el Loop While para Eso nos vamos a devolver acá como puedes ver yo tengo el código de la clase pasada Tú si quieres lo puedes dejar y también puedes aprovechar de comentarlo para que veas cómo se puede ejecutar un for a diferencia de un While yo lo que voy a hacer es que lo voy a eliminar y voy a
comenzar a crear nuestro Loop While a diferencia del Loop de for nosotros tenemos que declarar fuera de un Loop While nuestro valor inicial que en este caso yo voy a indicar nuevamente Que es cero Y fíjate que acá nosotros lo estamos declarando como un entero Entonces vamos a comenzar desde cero Exactamente igual como nosotros lo estábamos haciendo con el for y después de esto es que nosotros vamos a escribir While Abre paréntesis y continuamos con un abre y cierra paréntesis de llaves y acá es donde nosotros debemos colocar la condición que en este caso va
a ser I menor que 5 pero antes de que guardes y antes de que ejecutes este código por Favor no lo ejecutes porque si no se te va a colgar la máquina Fíjate que si nosotros no colocamos absolutamente ninguna instrucción para nosotros poder alterar el valor de I nosotros nos vamos a quedar ejecutando esta línea de código que aparece acá o estas líneas que se encuentran acá para siempre y por siempre y eso nos va a colgar la máquina Así que no ejecutes esta línea de de código todavía lo que sí vas a tener que
hacer es primero realizar la ejecución Que tú vas a querer hacer nosotros lo único que vamos a hacer es imprimir el texto de Hola mundo seguido de el valor de I concatenado no vamos a ejecutar todavía porque tenemos que cambiar el valor de I Y acá es donde nosotros vamos a indicar I + más entonces así es como se va a ejecutar este código primero nosotros declaramos una variable que en este caso es I y su valor va a ser igual a cero y luego Dentro de este While aquí en este paréntesis redondo es donde
Nosotros vamos a evaluar si se cumple una condición si es que esto nos devuelve true vamos a ejecutar todo el código que se encuentra dentro del While pero si esto nos devuelve false en ese caso nosotros nos vamos a salir del While a continuación nosotros imprimimos el texto de Hola mundo seguido del valor de I que partimos en cero pero fíjate lo que está ocurriendo aquí al final justamente acá es donde nosotros estamos cambiando el valor de I lo estamos Aumentando en uno esto nos va a permitir a nosotros poder incrementar este este valor para
que después su valor sea 1 entonces 1 menor que 5 Claro que sí ejecutamos esto y va a valer 2 2 menor que 5 y así sucesivamente hasta que I valga cinco cuando valga cinco es que nos vamos a salir de Loop Así es que eso es lo que te voy a mostrar ahora vamos a volver a colocar un print Ln y vamos a colocar Acá saliendo del Loop guardemos y ejecutemos nuestra aplicación y ahora Podemos ver cómo nos muestra Hola mundo del C al cu y finalmente el texto de saliendo del Loop y ahora
ahora si nosotros tenemos el Loop de for Por qué nosotros deberíamos utilizar el Loop de Wi y es porque este además de poder realizar exactamente las mismas tareas que hace el Loop de for nos sirve para que podamos escribir aplicaciones donde el usuario tenga que estar escribiendo opciones dentro de una línea de comandos Y eso es lo que yo te voy a mostrar en Nuestro siguiente [Música] video Vamos a continuar creando nuestra primera aplicación de terminal para eso tenemos que utilizar nuestra clase de scanner así que vamos a crear una variable de scanner a partir
de una instancia de la clase Scanner aquí recuerda que tenemos que pasar System in para que sepa de dónde tiene que estar leyendo y luego lo que haremos será declarar un String que se va a llamar Input y va a comenzar como un Stream completamente vacío Esto va a ser lo que ingrese el usuario y dependiendo de lo que ingrese el usuario son las acciones que nosotros vamos a tomar entonces acá es donde nosotros vamos a utilizar nuestro While pero tú te empezarás a preguntar comoo nosotros vamos a utilizar lo que ingresa el usuario para
poder definir cuando entramos o cuando salimos de una aplicación y ese es el truco que te quiero mostrar ahora Entonces acá dentro de este mismo While vamos a escribir lo siguiente siempre y cuando input no sea Exactamente igual al texto de salir en ese caso vamos a ejecutar lo que se encuentra aquí adentro y de esta manera es como nosotros podemos hacer una aplicación que tiene un Loop infinito que es el caso de este y pero que de verdad tiene sentido nosot nosotros solamente nos vamos a salir de este Loop pero única y exclusivamente cuando
el usuario ingrese El texto salir y de esa manera es como nosotros vamos a cerrar esta aplicación Ahora nos vamos a devolver y le vamos a indicar al usuario qué es lo que tiene que escribir y lo que yo quiero que el usuario escriba es un comando Así que vamos a escribir acá ingresa Comando dos puntos y un espacio y acá es donde solicitamos el texto del usuario Entonces vamos a indicar input va a ser igual a scanner punto next Nosotros le podríamos indicar next Line pero yo voy A preferir utilizar next porque los comandos
van a ser solamente de una palabra en específico Pero lo que sí voy a querer hacer es que en el caso de que el usuario ingrese el comando pero por ejemplo lo haga con mayúsculas o le coloque una mayúscula o una minúscula o coloque el texto como él quiera pero siga escribiendo por ejemplo el texto de salir Yo quiero poder interpretarlo de la manera correcta porque el usuario podría escribir por ejemplo el texto de Salir de esa manera sumamente feo pero yo igual Quiero poder interpretarlo de la manera correcta entonces por eso yo le estoy
aplicando el to lower Case y ya que nosotros tenemos el texto que ingresó el usuario dentro de esta variable de input cuando yo ingrese el texto de salir esta opción de While o esta evaluación que nosotros estamos haciendo es que me va a arrojar falso y nos vamos a salir de este Wi Así que yo voy a aprovechar de imprimir nuestro Input y voy a colocar acá justamente fuera de este While un terminó el Loop Ahora sí podemos guardar y vamos a ejecutar nuestra aplicación recuerda el atajo de teclado que es con control r para
mi caso y acá nos está indicando ingresa un comando yo voy a ingresar por ejemplo Chanchito y vemos que el comando es Chanchito pero también lo está haciendo en este caso Con la c minúscula porque nosotros estamos colocando un tool overcase y ahora vamos a ingresar El Comando que nos interesa que es el de salir y fíjate como yo lo voy a escribir lo voy a escribir bien mal porque me interesa estar probando también la funcionalidad del tocase aquí yo presiono enter y vemos como me está mostrando acá el texto de salir a continuación terminó
el Loop y Esta es una manera la verdad es que bastante útil de cómo nosotros podemos utilizar un Loop While para poder crear aplicaciones que se ejecuten en la línea De [Música] comandos Vamos a continuar viendo la instrucción de do While esta se parece bastante a While sin embargo tiene una sutil diferencia que es importante que nosotros veamos Así que lo primero nos vamos a devolver aquí a nuestro editor y vamos a declarar un entero que va partir como cinco y aquí es donde viene la primera diferencia con los While nosotros tenemos que escribir While
pero En este caso lo que nosotros vamos a escribir primero es do y después del do nosotros vamos a escribir While seguido de abre y cierra paréntesis punto y coma el punto y coma final es sumamente importante y ahora justamente aquí en este paréntesis es donde nosotros vamos a colocar la condición que queremos que se evalue para poder ejecutar lo que se encuentra dentro del do Así que acá yo voy a colocar un i menor a 5 sin embargo esto tiene una sutil diferencia con While Y es que en While primero se va a evaluar
esto que aparece acá y luego se va a ejecutar el código A diferencia de eso do While lo que va a hacer es primero va a ejecutar el código y luego va a realizar esta evaluación te lo voy a mostrar con el siguiente ejemplo vamos a hacer un system.out println y vamos a imprimir nosotros el valor de I vamos a guardar y vamos a ejecutar y vemos que me está mostrando el valor de cinco como puedes ver aquí yo inicial en este caso Mi variable de I con el valor de 5 entonces este paso siempre
lo va a ejecutar no importa si es que acá abajo tengamos true o tengamos false Esa es la principal diferencia con Y entonces ahora yo voy a aprovechar de cambiar este valor a por ejemplo dos guardamos y volvemos a ejecutar y como puedes ver entramos en un Loop infinito voy a aprovechar de detener la ejecución de esto eso nosotros lo podemos hacer aquí donde tenemos este cuadradito rojo voy a Pincharlo y ahí he detenido la la ejecución Esto es para que veas lo que te ocurre cuando tú por alguna razón entraste a un Loop infinito
porque se te olvidó colocar la condición para que la variable de I cambie Así que ahora sí podemos llegar a i + más lo colocamos dentro de nuestro do While y ahora sí podemos volver a ejecutar nuestro código y vemos ahora que me está mostrando dos 3 y cuatro ahora no me está mostrando el cinco Fíjate en eso eso es super Importante y por qué no me está mostrando el cinco Porque tenemos nuestra variable inicializada en dos Aquí imprime dos y luego de eso cambiamos el valor a TR y ahí nosotros realizamos la evaluación acá
después tenemos tres imprimimos tres pasamos a 4 4 es menor que 5 después tenemos 4 lo cambiamos a 5 y 5 no es menor que 5 entonces detiene la ejecución entonces recapitulando do While va a ejecutar el código primero y luego va a preguntar a Diferencia de While que primero va a preguntar y luego va a ejecutar el [Música] código Vamos a continuar viendo la las instrucciones de break y continue estas instrucciones nos sirven para que podamos detener o continuar la ejecución de un Loop y te voy a mostrar en este video cómo las podemos
utilizar Así que lo primero que tienes que ver es que en este código Nosotros hemos definido una instancia del Scanner Y luego definimos El valor inicial del input que va a ser un String vacío y después nosotros tenemos un While true con esto lo que nosotros queremos hacer es que este Loop de While se esté siempre ejecutando a menos que nosotros hagamos algo en específico y ese algo en específico nosotros lo vamos a ejecutar dentro de la misma terminal y con eso nosotros vamos a ver como ejemplos Break y continue Así que vamos nuevamente acá
el código y vamos a indicarle al usuario Que este tiene que ingresar un comando después de esto tenemos que capturar lo que haya ingresado el usuario y para eso nosotros creamos nuestra variable de input Así que acá colocamos input y Esto va a ser igual a Scanner next podríamos colocar next Line Pero vamos a seguir exactamente con el mismo ejemplo utilizando solamente next y recordando utilizar to lower Case para que podamos capturar las instancias cuando el usuario escribe con mayúscula o cuando También escribe el texto con minúsculas y aquí es donde nosotros vamos a empezar
a utilizar Break y continue lo primero que yo voy a hacer es preguntar si es que esta variable de input es Exactamente igual al texto de salir y en el caso que sea Exactamente igual al texto de salir yo voy a ejecut ar la instrucción de break esta instrucción de break te va a encargar de matar o de salirse de este Loop en el fondo esto ya va a dejar de existir pero exactamente En esta línea Qué quiere decir esto Si es que por alguna razón llegas a existir algo que se encuentre entre medio de
este While justamente aquí en esta línea no se va a ejecutar Así que vamos a colocar acá un ejemplo de esta línea no s de debería ejecutar y vamos a guardar y ejecutemos nuestra aplicación entonces acá nos está indicando que tenemos que ingresar un comando y El Comando que yo voy a ingresar va a ser Lala esto por supuesto que nos va a mostrar en Pantalla esta línea no se debería ejecutar pero fíjate lo que pasa cuando yo escribo el texto de salir me indica que terminó el Loop y también se cerró nuestra aplicación ahora
nosotros ya sabemos que con el comando de break lo que hacemos Es salirnos del While y luego de eso podemos ejecutar todas las líneas que se encuentran más abajo pero es muy importante mencionarte solamente si es que estas se encuentran fuera del While ahora vamos a ver el ejemplo de Continue para eso yo lo que voy a hacer es crear acá otro If pero lo que voy a hacer es evaluar si es que lo que ingresó el usuario es igual a continuar y en el caso de que sea así vamos a ejecutar la instrucción de
continue algo importante que no te he dicho todavía tanto break como continue solamente se pueden colocar dentro de un Loop este puede ser un While o puede ser un for y bueno a excepción de break que este también se puede incluir dentro de un Switch pero es para realizar otra cosa Así que piénsalo de esta manera cuando hablamos de break y continue estamos hablando de un Loop que en este caso puede ser While o puede ser for Pero en fin continuemos cuando el usuario ingrese el texto de continuar nosotros vamos a llamar a esta instrucción
de contin continu cuando eso ocurra lo que va a pasar es que justamente desde de acá el código va a saltar hacia arriba o sea en verdad es el puntero es el Encargado de ejecutar nuestra aplicación y una vez que haya llegado al comienzo que vendría siendo acá va a comenzar la ejecución de nuevo vamos a verlo ejecutamos nuestra aplicación con control r y acá en ingrese Comando vamos a colocar el texto de continuar presionamos enter y vemos como me está indicando nuevamente ingresa un comando Esto está pasando porque no está llegando a esta línea
de system.out println entonces continuar de Manera efectiva te manda hacia arriba al comienzo ahora si es que nosotros volvemos a ejecutar nuestra aplicación voy a colocar un stop y rerun vamos a colocar acá continuar vemos que no pasa nada voy a colocar Lala esta línea no debería ejecutarse pero si coloco salir vemos cómo se ha terminado el Loop y finalmente nuestra aplicación se ha [Música] cerrado Vamos a continuar viendo la instrucción de for in la instrucción de For in se parece muchísimo como la instrucción de for pero esta instrucción se creó en específico para poder
iterar tanto arrays como colecciones las colecciones nosotros las vamos a ver más adelante pero lo importante que tienes que saber es que es una forma simplificada de poder iterar distintos elementos vamos a verlo primero lo que tenemos que hacer es crear una Rey yo lo que voy a hacer es crear una rey de strings que se va a llamar Personajes y Esto va a ser igual a una rey que va a contener los elementos de Goku también vamos a tener a Vegeta y a continuación vamos a tener a Chanchito feliz una vez que tenemos todos
estos personajes vamos a proceder a iterar losos pero primero lo que vamos a hacer es iterar losos pero con la instrucción de for para que luego veas Cuál es la diferencia de iterar lo con un for in Así que lo que vamos a hacer es crear nuestro for y Dentro de este tenemos que Crear una variable que se va a llamar I en este caso es uno entero y vamos a evaluar siempre y cuando I sea menor a persona imes length en el caso de que sea así después nosotros vamos a aumentar el valor de
I en uno y ahora sí podemos realizar un print Ln de personajes y con los paréntesis cuadrados le vamos a pasar I de esta manera en la primera iteración nosotros vamos a ver Goku después cuando I valga uno vamos a ver Vegeta y después cuando I valga dos vamos a ver a Chanchito feliz Así que ahora guardamos y ejecutamos nuestra aplicación y vemos comoo nos está mostrando Goku Vegeta y Chanchito feliz Esta vendría siendo la forma normal de como antes se iteran los elementos de una rey pero ahora existe una nueva herramienta no es tan
nueva en verdad porque tiene bastantes años pero que pasó a reemplazar esta instrucción cuando tú quieres iterar los elementos y en ese caso estamos hablando de la Instrucción de forin Así que yo lo que voy a hacer es comentar estas líneas le voy a colocar estos flatch hacia adante para poder comentar las líneas y ahora sí podemos continuar para poder hacer un for in vamos a hacer for seguido de eso declaramos una variable que debiese ser un elemento de este arrey Entonces si es que nuestro arrey es personajes yo le voy a dar personaje y
después de eso nosotros colocamos un dos puntos personajes esto nos va a indicar que Estamos creando una nueva variable que se llama personaje y esta variable se va a crear a partir de la rey que nosotros le indiquemos a la derecha que en este caso es personajes y va a ir iterando cada uno de los elementos uno a uno o sea Goku Vegeta y también Chanchito feliz Ahora sí podemos colocar acá un print Ln de personaje vamos a guardar y vamos a ejecutar nuestra aplicación y acá podemos ver como tenemos a Goku Vegeta y también
a Chanchito feliz de Esta manera es como nosotros podemos también iterar los elementos que se encuentran dentro de una rey pero de una manera bastante más sencilla y con un código más limpio así que de ahora en adelante Cada vez que tú quieras iterar elementos de una Rey es mejor Que prefieras utilizar esta instrucción de forin porque te va a ayudar a que tu código sea más fácil de [Música] leer Vamos a continuar con nuestro Siguiente ejercicio y este va a ser crear una aplicación que se pueda ejecutar dentro de la terminal como puedes ver
acá nosotros tenemos tres opciones sin embargo esta opción de salir No quiero que la agregues quiero que solamente te enfoques en las opciones uno y dos No te preocupes de salir esa nosotros la vamos a ver después y la verdad es que esta tiene una pequeña dificultad y tiene algo que nos nosotros no hemos visto Entonces Vamos a resolver este ejercicio solamente para las opciones uno y dos y después de resolver este ejercicio yo te voy a enseñar Cómo se realiza la opción número tres Entonces vamos a probar nuestra aplicación lo primero que vamos a
hacer es probar la opción de la calculadora Así que vamos a escribir uno enter y nos está indicando ingresa el primer uno yo le voy a pasar 12 y luego para el segundo número le paso el valor de 32 y mira acá me está indicando que El resultado es el número 44 y luego me vuelve a imprimir exactamente el mismo menú ahora vamos a probar la segunda opción que es la de hackear la NASA Así que yo le voy a pasar la opción número dos presiono enter y vemos como me está mostrando el texto acd
hackeando la NASA vemos como Está realizando una especie de carga y luego nos dice listo eres hackerman la NASA ya ha sido hackeada Entonces ahora Date un par de minutos para poder resolver este ejercicio Recuerda no implementar la opción número tres para salirse de la aplicación eso yo te lo voy a enseñar después cuando estemos resolviendo el ejercicio y mucha suerte nos veremos en el siguiente video con la [Música] solución Vamos a continuar este video solucionando El ejercicio del video anterior Así que para eso yo ya me adelanté y escribí un poco de código y
también eliminé todo el anterior aquí Estamos creando una instancia de la clase de scanner y luego estamos declarando nuestra variable que se va a encargar de almacenar lo que el usuario escriba dentro de la terminal ahora nosotros debemos realizar nuestra instrucción de While le tenemos que pasar el valor de true para que este siempre se esté ejecutando y después de esto nosotros podemos indicarle al usuario que tiene que ingresar una opción Entonces le vamos a indicar con El texto ingresa una opción dos puntos y yo voy a aprovechar de copiar esto y lo voy a
pegar un par de veces y luego me voy a encargar de cambiar las opciones entonces la opción número uno es calculadora Esta es una calculadora simple Recuerda que esta solamente suma la segunda opción va a ser aar la NASA y la opción número tres que por ahora no la vamos a implementar va a ser salir después tenemos que tomar o capturar lo que haya ingresado el Usuario Así que vamos a llamar a input Scanner punto y vamos a llamar a next Line y luego to lowercase ahora es que nosotros debemos Llamar a la instrucción de
switch yo voy a bajar un poco Eso sí para que se vea un poquito más abierto el código perfecto Ahora sí escribimos switch y tenemos que pasarle acá input luego tenemos que definir los casos que nosotros queremos capturar el primer caso va a ser cuando el usuario ingrese uno voy a aprovechar de colocar Inmediatamente acá un break y después para cuando el usuario ingrese el valor de dos y voy a aprovechar también de colocar otro break acá vamos a comenzar con el caso número uno porque ese es más difícil la verdad es que el caso
número dos es solamente imprimir texto Así que acá nosotros vamos a crear una variable que va a ser de tipo entero y nosotros la vamos a llamar a y acá Nosotros llamamos a scanner next int y la vamos a almacenar luego vamos a copiar y pegar Esta línea pero vamos a crear una variable que se va a llamar B acá también le tenemos que indicar al usuario que tiene que ingresar un número entonces volvemos a utilizar print Ln y le vamos a indicar al usuario ingrese un número dos puntos voy a aprovechar de copiar esto
y lo voy a agregar luego justamente después de haber ingresado el primer número que en este caso es el entero de a y acá le voy a indicar ingrese segundo número después de esto Ya le podemos indicar al usuario el resultado Así que acá yo voy a volver a ejecutar mi print Ln y le voy a indicar el resultado es dos puntos y luego nuevamente un print Ln pero le podemos indicar ahora que el valor va a ser a + b Ahora sí podemos guardar y vamos a ejecutar nuestra aplicación yo voy a colocar un
stop e rerun porque estaba ejecutando la aplicación anterior perfecto y ahora sí le voy a indicar la opción número uno ingrese número 12 Ingresa el segundo número 32 y vemos que acá arriba me está indicando que el resultado es 44 pero fíjate que está ocurriendo algo me está indicando acá ingresa una opción pero luego me lo vuelve a imprimir Qué es lo que está pasando acá te voy a indicar inmediatamente Cómo solucionar este error lo primero que vamos a hacer es subir hasta que lleguemos acá justamente a next Line y hay algo que ocurre cuando
nosotros estamos utilizando next Line en Conjunto con next in next next Double Y así sucesivamente y te lo voy a aprovechar de dibujar para que se entienda un poquito más cada vez que Nosotros llamamos a la instrucción de next int o también podría ser next Double o next fite o next float lo que está ocurriendo es que nosotros vamos a ingresar un número que va a leer después Java en la terminal vamos a suponer que va a ser un número XX Por supuesto que no es XX acá podría estar un un y un 5 Pero
para que me sigas la idea y después de eso nosotros vamos a colocar el carácter de enter El caráter de enter si nosotros nos acordamos vendría siendo un Back n vamos a suponer que es este Back n Entonces qué es lo que va a ocurrir Java va a tomar el número pero lo que se encuentra aquí a la derecha lo va a ignorar y lo va a dejar dentro de un buffer y buffer vendría siendo el que se encarga de almacenar todos los datos que nosotros estamos ingresando en este Momento dentro de la terminal luego
la siguiente instrucción va a ser next Line y cuando nosotros tomemos next Line me va a dar cuenta que va a encontrarse algo ya dentro de un buffer que es este carácter de nueva línea y lo va a tomar como un carácter válido Entonces como nosotros no tenemos absolutamente nada dentro de intellij que capture ese caracter en especial lo que va a hacer es que va a pasar por absolutamente todo esto llega hasta el final ve que no hay Ningún caso por defecto Así que vuelve a subir y vuelve a ejecutar esto que se encuentra
acá la manera de poder solucionarlo es que nosotros en lugar de utilizar next Line es que Sencillamente utilicemos next de esta manera si dentro del buffer se encuentra un carácter por ejemplo de tabulación de espacio o de nueva línea que en este caso es el que ingresa el enter todos esos caracteres van a ser ignorados ahora si nosotros guardamos y volvemos a ejecutar nuestra Aplicación colocamos acá stop y rerun en el caso que no la hayamos detenido y volvemos a colocar la calculadora ingresa número 12 ingresa segundo número 32 vemos que ahora me está arrojando
el resultado de 44 y luego me indica ingreso una opción pero lo está haciendo Solamente una vez que eso es lo que nosotros queremos ahora ya podemos continuar implementando el segundo caso la verdad es que este es sumamente fácil Sencillamente tenemos que colocar un System.out println vamos a colocar un texto de hackeando la NASA y aprovechamos de colocar un emoji de el tipo con lentes este que se encuentra aquí perfecto velvo subir la cámara y ahí vemos que ya aparece ahora contin amos con el símbolo de numeral y yo voy a tomar esto y lo
voy a aprovechar de copiar otras tres veces más ahora colocamos dos veces el numeral tres veces el numeral cuatro veces el numeral y vamos a continuar o finalizar más que Nada con un texto que va a decir NASA hackeada eres hackerman Y ahora sí podemos guardar este caso no lo voy a probar porque la verdad es que es bastante sencillo pero si tú quieres probarlo puedes ejecutar nuevamente la aplicación el caso que me interesa ahora probar es el caso número tres porque este es más difícil aquí yo lo que voy a hacer es tomar el
el caso número tres y aquí lo que yo debería hacer es salirme de la aplicación cierto así que lo que Voy a hacer es ejecutar acá nuevamente nuestro print Ln vamos a colocar el texto de chao mundo y luego vamos a ejecutar un break pero fíjate en lo que está pasando acá yo estoy colocando un break pero este break se encuentra dentro de un switch Entonces el break que va a ejecutar no va a ser el del While sino que va a ser el del switch justamente Dentro de este Case número tres Entonces qué podemos
hacer nosotros para en lugar de detener nuestro switch Que se detenga nuestro While que nosotros tenemos acá arriba y La respuesta es con etiquetas yo lo que voy a hacer es que justamente aquí a este While antes de él le voy a pasar el texto de terminal ahora este texto de terminal es completamente arbitrario tú le podrías pasar el texto que tú quisieras le podrías colocar Chanchito feliz le podrías colocar mi aplicación le podrías colocar Felipe o el texto que a ti se te ocurra yo lo voy a dejar como Terminal y luego más abajo
nuevamente en nuestros Case en específico el Case 3 que es cuando el usuario presiona la tecla número tres para salir es que le voy a indicar break pero break qué break terminal de esta manera es como Java sabe que el Loop que tiene que terminar o la instrucción que tiene que detener no es el switch sino que es el Loop Así que ahora podemos guardar voy a ejecutar nuevamente la aplicación incho acá en stop y rerun y ahora lo que voy a hacer Es probar el caso número dos hackeando La NASA vemos que la NASA
ha sido hackeada soy hackerman muy bien y ahora le vamos a pasar la opción número tres para salir vemos que me está mostrando chavo mundo y que finalmente la aplicación se cierra de esta manera es como nosotros resolvemos El ejercicio del video anterior ahora ya podemos continuar con la siguiente [Música] sección en esta sección vamos a ver los Métodos en Java Cómo podemos crearlos y también unos cuantos trucos que podemos utilizar Así que vamos a eso nos vamos a devolver aquí a nuestro editor de texto como pued puedes ver yo ya he eliminado todo el
código que se encontraba acá dentro y vamos a hacer lo siguiente vamos a colocar un system.out println y vamos a colocar el texto de Hola mundo esto nosotros ya sabemos qué es lo que hace prácticamente lo único que vamos a hacer es Mostrar el texto de Hola mundo Pero qué es lo que ocurriría si nosotros por alguna razón tenemos que reutilizar la lógica que nosotros ya creamos yo sé que esto la verdad es que es bastante poco pero es para poder simplificar lo que me interesa en este momento explicar que son los métodos Entonces vamos
a suponer que Esto va a ser una lógica bastante más grande y que la voy a querer reutilizar Entonces yo la voy a recortar y voy a venirme justamente fuera de este método de public static Void main en particular yo lo voy a hacer más abajo y acá voy a escribir lo siguiente static void y el nombre del método que en este caso yo le voy a indicar que se llama mi método continuamos con un abre y cierra paréntesis y después un abre y cierra paréntesis de llaves y acá yo lo que voy a hacer
es es pegar el código que había sacado del método principal Main y ahora para yo poder llamar a este método tengo que copiar el nombre de este y Justamente acá dentro lo que hago es pegarlo para poder ejecutarlo fíjate que acá nosotros estamos colocando un abre y cierra paréntesis y después de esto nosotros vamos a finalizar con un punto y coma ahora vamos a ver qué fue lo que yo hice lo primero que nosotros hacemos Es indicar la palabra reservada de static Por qué nosotros estamos haciendo esto porque el método Main también es static que
nosotros lo podemos ver acá cada vez que nosotros tenemos un método Static como por ejemplo vendría siendo este método Main si nosotros queremos utilizar otro método Dentro de este método static este también se va a tener que llamar static nosotros vamos a profundizar mucho más en esto cuando lleguemos a orientación a objetos por ahora lo que sí tienes que saber es que si vas a crear un método por lo menos dentro de esta sección para poder reutilizar lógica vas a tener que indicarle el nombre de static después de Esto nosotros tenemos el valor de retorno
quiere decir qué es lo que va a retornar nuestro método Nosotros también vamos a profundizar en esto en dos videos más así que por ahora déjalo en void pero significa que nuestro método no va a retornar absolutamente nada y después de esto nosotros tenemos el nombre del método en este caso está diciendo mi método Ahora yo para poder ejecutarlo tengo que solamente colocar el nombre del método que yo quiero Ejecutar en este caso como yo me encuentro dentro de la clase Main y estoy ejecutando el método Main el cual es public static void Main Yo
acá puedo llamar al método como mi método ahora cuál es la gracia nosotros podemos llamar a este método múltiples veces y también nosotros podemos crear otros métodos acá yo tengo el método creado que se llama mi método pero voy a aprovechar de crear otro más vamos a volver a colocar las palabras claves que Te dije que son sumamente importantes las cuales son las de static y void así que vamos a escribir acá tatic void y luego el nombre del método que yo le quiero asignar que en este caso va a ser otro método abre y
cierra paréntesis Y luego el abre y cierra paréntesis de llaves acá voy a volver a utilizar mi snippet para poder colocar mi print Ln y acá vamos a colocar Chanchito feliz porque por qué no vamos a colocar Chanchito feliz y ahora para poder Utilizar este método basta con que nosotros escribamos el nombre de este método acá arriba Entonces justamente acá donde nosotros nos encontramos en la línea seis voy a escribir el nombre del nuevo método que es otro método y como puedes ver el intelligence también me está sugiriendo autocompletar el nombre del método voy a
volver aquí a colocar otro método Y ahora yo puedo presionar enter y vemos como intellij ha autocompletado absolutamente todo lo que Tenía que escribir voy a guardar y voy a ejecutar ahora mi aplicación ejecutamos y acá podemos ver cómo me está mostrando Hola mundo tres veces porque yo llamé a este método tres veces y después me está mostrando Chanchito feliz dos veces porque yo lo que hice fue ejecutar el método de nombre otro método dos veces y ahora que nosotros ya vimos Cómo podemos crear métodos dentro de Java pasemos al siguiente video donde nosotros vamos
a ver argumentos y parámetros [Música] en este video Vamos a continuar hablando de argumentos y parámetros para eso nos vamos a devolver aquí a nuestro escritorio y como puedes ver yo ya he simplificado bastante el código de nuestra lección anterior solamente tenemos el método Main y también tenemos el método que se llama mi método el cual está imprimiendo el texto de Hola mundo hasta el momento nada mágico ahora qué es lo que pasaría si yo por alguna razón Quiero volver a utilizar este método pero en lugar de decir hola mundo yo lo que quiero decir
es Hola y el nombre de la persona como en este caso podría ser por ejemplo Nicolás Pero si yo llego y ejecuto este método muchas veces lo que va a ocurrir es que me va a mostrar muchas veces Hola Nicolás que es lo que nosotros estamos viendo acá Entonces cómo puedo hacer yo para poder pasarle variables a este método para que así en lugar de imprimirme Hola Nicolás me Imprima solamente lo que yo quiero que haga y de esta manera hacer nuestros métodos más flexibles en ese caso es que nosotros podemos utilizar los argumentos y
los parámetros para eso lo primero que nosotros tenemos que ver son los parámetros los parámetros son las variables que nosotros podemos utilizar dentro de los métodos y los argumentos son los valores que nosotros le vamos a pasar cuando llamemos a este método Entonces vamos a declararlo el primero Vendría siendo nombre esto que se encuentra acá es un parámetro Así que acá vamos a colocar parámetro esto es muy importante porque hay muchos desarrolladores que todavía se confunden entre parámetro y argumento Y la verdad es que yo también me confundí durante mucho tiempo y le decía absolutamente
a todo parámetros Pero bueno ahora tú ya lo sabes esto de acá es un parámetro y el valor que nosotros le vamos a pasar acá es un argumento algo también muy Importante es que al parámetro que nosotros estamos definiendo le tenemos que indicar el tipo en este caso Yo quiero que nombre sea un String y luego para yo poder utilizar este parámetro basta con que Sencillamente tome el nombre de esta variable y lo vaya utilizando Como por ejemplo ahora que lo que estoy haciendo es tomar el String de Hola mundo y le estoy concatenando el
nombre Entonces esto me debería Mostrar Hola seguido del nombre que yo decida Pasarle ahora que nosotros ya hemos definido el parámetro de nombre y lo estamos utilizando dentro de nuestro system.out println tenemos que pasarle el valor aquí cuando estamos ejecutando el método entonces yo voy a decir mi método y el primero va a decir Nicolás y como puedes ver acá también intellij me está indicando el nombre del parámetro que estoy utilizando que en este caso es nombre aquí obviamente yo le podría indicar apellido edad Chanchito feliz y Me lo va a mostrar aquí ahora vamos
a llamar al siguiente método pero en lugar de decir Nicolás va a decir por qué no Chanchito feliz entonces colocamos acá Chanchito feliz guardamos y ahora vamos a ejecutar nuestro código utilizamos nuestro Tajo de teclado porque así es más rápido y ahora podemos ver que me está mostrando el texto de Hola Nicolás que es el primer argumento que pasamos y después Hola Chanchito feliz que es el segundo argumento que nosotros pasamos Ahora sí vamos a volver a repetir lo que te había mencionado antes los valores que yo le paso a los métodos Al momento de
llamarlos que vendría siendo acá cuando yo los estoy utilizando a esto se le conoce como argumento Entonces tenemos el argumento de Nicolás y luego más abajo tenemos el argumento de Chanchito feliz pero cuando yo estoy haciendo referencia a la variable dentro de la definición del método como podría ser aquí o También acá a esto se le Conoce como parámetro y ahora vamos a colocarle un poco más de alegría a la vida y vamos a ver cómo nosotros podemos tener métodos pero que tengan más de un parámetro para eso nosotros podemos venirnos acá y separando con
coma podemos indicar primero el tipo que nosotros queremos que tenga este siguiente parámetro yo voy a decir que va a ser un entero y el valor de este o el nombre que nosotros vamos a utilizar para referenciar este parámetro va a ser El de edad Luego de eso yo puedo tomar este mismo nombre lo puedo copiar o también lo que puedo hacer es referenciarlo solamente Dentro de este método Así que después de nombre vamos a colocar un más coma tu edad es dos puntos y luego de esto le agregamos la variable de edad perfecto y
ahora nosotros guardamos vamos a ver que me están indicando unos errores acá arriba estos errores son lógicos Por supuesto porque ahora nosotros estamos Necesitando pasarle otro argumento el cual represente la edad de estas personas entonces ahora yo voy a colocar coma espacio y le voy a pasar el valor de 25 como puedes ver ahora intellij me está indicando que el parámetro es edad y el argumento es 25 ahora tenemos que hacer lo mismo con Chanchito feliz yo le voy a pasar el valor de 30 voy a guardar y vamos a volver a ejecutar nuestra aplicación
y ahora podemos ver que me está mostrando Hola Nicolás tu edad es 25 Hola Chanchito feliz tu edad es 30 de esta manera es como nosotros podemos crear métodos y también podemos pasarle distintos valores a estos para que se puedan comportar de manera distinta dependiendo del caso que nosotros necesitemos [Música] en este video vamos a hablar acerca del valor de retorno de los métodos Así que nos vamos a devolver aquí a nuestro editor y vamos a crear un método que se Va a llamar suma así que me vengo justamente después del método public static void
Main y vamos a colocar acá static void suma y le voy a pasar dos valores le voy a pasar un entero que va a ser a y otro entero que va a ser b y lo que vamos a hacer es tomar estos valores de a + b y ahora tenemos que ver cómo nosotros podemos tomar estos valores o el resultado de la suma de a + b y devolverla para que luego en nuestro método principal Main nosotros podamos Llamar a suma luego podamos pasarle dos valores Como por ejemplo 12 y 25 Y de alguna manera
nosotros obtener este resultado y algo importante antes de continuar Yo sé que estos métodos son sencillos pero el objetivo es entender bien cómo funciona el retorno dentro de los métodos antes de empezar a pasar a algo un poco más complicado y aquí es donde viene la palabra mágica return return se va a encargar de devolver los valores que nosotros especifiquemos a al Llamado del método por ejemplo aquí en suma yo lo que tengo que hacer es capturar este valor para poder capturarlo tenemos que declarar el tipo de la variable donde nosotros La queremos almacenar y
luego podemos crear otra variable que se llame resultado y luego utilizando el símbolo de igualdad nosotros vamos a poder capturar lo que nos devuelva este método de suma dentro de resultado sin embargo acá nos está indicando un error y yo ya sé cuál es el Error te acuerdas que yo te había hablado sobre la palabra para poder retornar valores en los métodos bueno en este caso nosotros tenemos aquí void y void significa que este método no va a retornar absolutamente nada Y eso Por supuesto que no es lo que nosotros queremos lo que nosotros queremos
hacer es retornar un entero Entonces cómo nosotros podemos hacer eso Sencillamente cambiando void por int y ahora todo nuestro código ha sido resuelto por casi Que arte de magia ahora nosotros podemos llamar a nuestro snippet para poder imprimir algo y acá Nosotros le vamos a pasar resultado yo yo voy a guardar y voy a ejecutar mi aplicación y vemos como acá me está indicando el valor de 37 eso es prácticamente lo que nosotros queríamos ahora algo importante Yo acá definí un entero como valor de retorno pero nosotros también podríamos retornar un byte También nosotros podríamos
retornar un Double podríamos también Retornar un float podríamos también retornar un String también lo que nosotros podríamos hacer retornar por ejemplo es retornar una instancia de la clase de Scanner Pero eso nosotros lo vamos a ir viendo más adelante ya con los ejercicios por ahora lo que quiero que sepas es que dependiendo del valor que nosotros queramos retornar acá que nosotros nos vamos a dar cuenta porque tenemos la palabra reservada de return y a la derecha lo que nosotros vamos a Retornar es el tipo de dato que nosotros tenemos que indicar acá pero no te
preocupes porque si por alguna razón tú te llegases a equivocar Como por ejemplo le colocas acá String Java se va a empezar a quejar inmediatamente vamos a colocar el mouse acá encima y vamos a ver que me está indicando que que el tipo requerido es String Pero lo que yo estoy retornando es un entero Y también vamos a tener el error aquí arriba donde nosotros le estemos llamando me está Indicando que yo lo que estoy haciendo es crear una variable de tipo int Pero lo que yo estoy devolviendo dentro de mi método de suma es
un String Así que cuando nosotros veamos ese texto subrayado en rojo en Java es porque Java nos está intentando ayudar para que nosotros no cometamos el error de devolver un tipo que no corresponde a una variable nosotros ya vimos el valor de retorno y también vimos los parámetros y los Argumentos dentro de los métodos Pero qué es lo que pasaría si nosotros tenemos este método de suma pero por alguna razón nosotros quisiéramos pasarle otro valor más como por ejemplo podría ser en este caso 45 aquí nosotros podemos ver que Java nos está indicando un error
porque este valor de 45 no está siendo esperado porque se espera que nosotros le pasemos solamente dos argumentos pero le estamos pasando tres entonces acá en Java no existe una Manera de poder indicar Oye voy a pasar un nuevo argumento pero este va a ser opcional así que si es que este no se encuentra no hagas nada eso nosotros no lo podemos hacer en Java lo que sí nosotros podemos hacer es algo llamado overloading lo voy a escribir acá y method overloading significa vamos a definir el mismo método múltiples veces pero lo que vamos a
hacer es cambiar la cantidad de argumentos que este tiene o también el tipo de argumento que Nosotros le estamos pasando te lo voy a mostrar en este caso para que nuestro código siga funcionando yo voy a venir aquí más abajo de esta función de suma y voy a volver a declarar el mismo método de suma exactamente el mismo static int suma pero aquí yo en lugar de pasarle solamente a y b yo lo que voy a hacer es que le voy a pasar un entero que se llama a otro entero que se llama b y
otro entero que se llama c y ahora lo que yo voy a hacer es retornar el valor De la suma entre a b y C y como puedes ver ahora mi código sigue funcionando pero también va a funcionar cuando yo decida Llamar a este método de suma que lo voy a mostrar inmediatamente para eso vamos a crear otra variable de resultado que también va a ser un entero pero se va a llamar resultado dos y ahora nosotros vamos a llamar a suma pero le voy a pasar el valor de uno y dos ahora cómo puedes
ver el código que se encuentra justamente acá también está Funcionando y se va a ejecutar de manera correcta Pero algo muy importante que tienes que darte cuenta Y es que dependiendo de la cantidad de argumentos que nosotros le pasemos es el método que se va a ejecutar acá nosotros tenemos suma pero con dos argumentos Por ende el método que se va a ejecutar es este que aparece acá el de arriba tiene tres argumentos Por ende el método que se va a ejecutar es este de acá vamos a mostrártelo ahora cambiando los tipos de Suma yo
lo que voy a hacer ahora es definir nuevamente otro método de suma pero este en lugar de retornar un entero va a retornar un String y también se va a llamar suma vamos a decir que este no va a tener absolutamente ningún parámetro pero lo que va a retornar es el texto de Hola mundo ahora cuando yo suba aquí a ver mi método Main Yo perfectamente puedo bajar un par de líneas más y voy a volver a llamar a suma pero fíjate que ahora me esta Mostrando tres alternativas yo puedo llamar a suma que me
devuelve un String puedo llamar a suma que me devuelve un entero y puedo llamar a suma que también me devuelve un entero sin embargo el segundo suma tiene dos parámetros y el tercer suma tiene tres parámetros yo Sencillamente lo voy a ejecutar así y voy a guardar el resultado dentro de una variable que se va a llamar texto y ahora nosotros podemos imprimir texto ahora voy a guardar voy a ejecutar mi Aplicación como puedes ver tengo el resultado de 82 y también tengo el resultado de Hola mundo y en este caso Nosotros hemos logrado definir
exactamente el mismo método tres veces o tres métodos que tienen exactamente el mismo nombre tú lo puedes ver así pero que cada uno tiene parámetros distintos a esto es a lo que se le conoce como method [Música] overloading van a existir momentos donde Nosotros vamos a querer declarar solamente un método pero no sabemos Cuántos argumentos Nosotros le vamos a pasar a este método afortunadamente existe una estrategia que nosotros podemos utilizar para poder pasarle múltiples argumentos a exactamente el mismo método y que este se comporte siempre de la misma manera te voy a mostrar Cómo se
puede hacer esto así que acá yo lo que voy a hacer es declarar un método que se llama suma Así que Continuamos con static int suma porque me interesa que retorne por supuesto que un entero pero este es lo que va a recibir su parámetro va a ser un arrey de números enteros y este se va a llamar números Ahora yo lo que puedo hacer es utilizar el método de for in para poder sumar absolutamente todos los números que vengan acá y eso es lo que nosotros vamos a hacer vamos a declarar una variable que
se llame resultado va a partir con el valor de cer Y luego Podemos llamar a for int número dos pun números ahora podemos indicar que resultado va a ser Exactamente igual a sí mismo sumado al número que viene y después podemos retornar el valor de resultado ahora nosotros podemos llamar a este método de suma acá arriba y le podemos pasar dentro de una array los valores de por ejemplo 1 2 3 4 y cco pero aquí también tienes que asegurarte de declarar que este va a ser una array de números enteros Así que acá yo
voy a Colocar int el abre y cierra paréntesis de corchete y debo utilizar también la palabra reservada de New para poder crear una nueva instancia finalizamos con el punto y coma y ahora podemos guardar el resultado acá dentro de una variable que se va a llamar r y ahora podemos imprimir esta variable en nuestra consola vamos a guardar ejecutamos nuestra aplicación y como puedes ver aquí me está entregando el resultado de la suma de todos estos Números que son del vamos a ver el uno al [Música] cinco vamos a hablar un poco ahora sobre el
alcance que existe dentro de los métodos acá yo he simplificado bastante el código de las lecciones pasadas para poder mostrarte A qué es lo que me refiero con alcance yo me refiero a que cuando me encuentro dentro del método Main alcance que yo solamente voy a poder acceder a estas cosas que se Encuentran dentro de este mismo método o sea yo voy a poder hacer referencia a estos solamente desde acá Qué significa esto yo puedo acceder a r y también puedo acceder a System porque estas son clases que nosotros hemos visto que podemos acceder de
manera global acá yo también podría definir otra variable que también va a ser un entero y que va a ser por ejemplo y este va a tener el valor de 25 ahora esta variable de c yo no voy a poder acceder a esta dentro del Método de suma y yo me vengo acá e intento imprimir esa variable coloco por ejemplo acá solamente c vamos a ver que Java O de hecho intellij me está marcando el carácter en rojo y esto es porque nosotros no podemos acceder absolutamente a ninguna variable que no haya sido declarada dentro
de los mismos paréntesis de este método O sea que t en este caso yo no puedo acceder desde suma a a Yo tampoco puedo acceder aquí desde suma y exactamente de la misma manera Nosotros no podemos acceder a a y b desde el contexto de este método Main pero nosotros sí vamos a poder acceder a llamar a otros métodos que nosotros hayamos creado dentro de nuestra clase Main pero ojo porque aquí hay una condición nosotros hasta ahora hemos estado trabajando solamente con métodos que contienen esta palabra reservada de statica como puedes ver la contiene Main
y también existe acá dentro de suma Entonces todos los métodos que nosotros Cre creemos dentro de nuestra clase Main siempre y cuando tengan la palabra reservada de static Nosotros los vamos a poder llamar entre estos mismos pero también tienes que tener mucho cuidado de no realizar llamados circulares a qué me refiero yo con un llamado circular vamos a venirnos acá y vamos a crear otro método que va a ser por ejemplo Lala el nombre da Exactamente lo mismo yo lo que te quiero mostrar es lo que vamos a hacer acá y acá dentro del ala
Yo voy a llamar a suma le voy a pasar uno y dos finalizamos con el punto estoy coma y después dentro de suma yo lo que voy a hacer es Llamar a Lala vamos a cambiar el tipo a Lala le voy a colocar void para que no retorne nada y vamos a guardar Fíjate en lo que está pasando Java en este momento no me está indicando absolutamente ningún error pero si yo intento ejecutar esto vamos a ejecutar nuestra aplicación y vamos a ver que me está indicando ahora un error Y vemos que el error la
verdad es que es bastante largo yo lo que voy a tratar de hacer ahora es subir hasta arriba y me está indicando que mi error se encuentra en Main pun Lala línea 14 después en Main suuma línea 9 después 149 149 y vemos que este error No termina nunca así que ojo con eso chicos No hagan llamados circulares y con llamad circular es no creen un método que llame a otro método para que luego este método vuelva a llamar exactamente al mismo Método esto no Queda prohibido no lo hagan porque si no van a tener
errores que van a ser puros dolores de [Música] cabeza en este video vamos a hacer una factorización de un ejercicio que resolvimos en la sección pasada refactorización significa cambiar el código interno pero que nuestra aplicación siga funcionando esto quiere decir que si después yo llego a ejecutar mi aplicación tiene que comportarse Exactamente igual a cómo se estaba comportando antes de yo empezar a tocar el código Así que ahora sí vamos a comenzar como puedes ver acá nosotros tenemos nuestra aplicación de terminal tenemos una clase Main con su método principal Main después tenemos el While y
por supuesto que el resto de la aplicación Entonces vamos a comenzar con nuestra refactorización para eso vamos a tomar todos estos print Ln y los vamos a recortar por qué yo decidí tomar esto Que se encuentra acá porque la verdad es que esto es código bastante repetitivo y lo único que está haciendo en este momento es solamente imprimir las opciones entonces para efectos prácticos de qué es lo que está haciendo mi aplicación que nosotros tengamos solamente puros print Ln la verdad es que no nos aporta mucho pero si nos aportaría más ver algo que nos
diga por ejemplo Mostrar opciones Así que yo voy a recortar esto y me voy a venir Justamente al final de nuestro archivo y lo que voy a hacer es Agregar un nuevo método los métodos Recuerda que se tienen que agregar justamente al lado del método principal Main Así que acá yo voy a colocar un static void Mostrar opciones y este es void porque nosotros no vamos a retornar absolutamente nada Ahora yo lo que puedo hacer es tomar este texto de mostrar opciones yo lo voy a copiar y vamos a a subir justamente aquí que es
donde nosotros deberíamos Colocar nuestro Sprint Así que coloco Mostrar opciones y finalizo con un punto y coma de esta manera nosotros ya logramos extraer una parte del código que es solamente esa parte de mostrar texto hay otra parte del código que hace algo La verdad es que bastante similar que es esta donde nosotros estamos hackeando la Nasa en este caso nosotros podemos hacer exactamente lo mismo vamos a recortar pero yo le voy a colocar acá inmediatamente el nombre del método que Va a ser hackar NASA abre y cierra paréntesis ahora podemos bajar y justamente después
de mostrar opciones nosotros Podemos agregar otro método que va a ser static void hackar NASA abre y cierra paréntesis y acá dentro de este método vamos a pegar todos estos system.out println que nos indica que nosotros estamos de cierta manera hackeando la NASA ahora nosotros podemos también colapsar todos estos métodos para nosotros poder colapsar noos vamos A venirnos acá a la izquierda y donde aparece esa flechita apuntando hacia abajo nosotros podemos pincharla y de esta manera este código se va a colapsar ahora nosotros podemos ir más arriba y vamos a ver como nuestro código de
nuestro método Main empieza a ser cada vez más simple está siendo más simple porque estamos sacando código que la verdad no hace mucho sentido que se encuentra acá y por qué no hace sentido porque son cosas repetitivas o porque Solamente estamos haciendo algo muy sencillo como es Mostrar texto muchas veces eso perfectamente lo podemos extraer y luego reemplazarlo por el llamado un método como por ejemplo acabamos Mostrar opciones después más abajo nosotros tenemos hackear NASA Y así sucesivamente ahora lo que yo quiero hacer es lo siguiente quiero tomar todo esto que aparece acá y quiero
recortarlo y enviarlo a un método Pero esto nos va a presentar ciertos problemas yo lo que Voy a hacer es recortarlo y vamos a ir resolviendo estos problemas paso a paso así que vamos a bajar y justamente antes o después de mostrar opciones da Exactamente lo mismo yo lo voy a hacer justamente aquí entre medio vamos a crear nuestro nuevo método pero este tiene tiene que retornar un número porque lo que nosotros vamos a hacer es sumar dos números Así que acá vamos a colocar Esto va a retornar un entero y este se va a
llamar calculadora ahora Justamente Dentro de este método podemos pegar todo el código que nosotros habíamos recortado pero fíjate que ahora nosotros tenemos un problema canner lo está mostrando en rojo y esto es porque no puede resolver esta variable entonces lo que nosotros podemos hacer son dos cosas uno crear una nueva instancia que yo la verdad no se los aconsejo yo prefiero pasarle la instancia de la clase de escáner a este método Así es que eso es lo que nosotros vamos a hacer Justamente aquí en calculadora Nosotros le vamos a pasar Scanner para eso tenemos que
indicar que Esto va a ser de tipo Scanner y la variable se llama Scanner ahora nosotros vemos que este error ya ha sido corregido el paso siguiente sería devolver el resultado de la suma Así que yo lo que voy a hacer es sacar este system.out println porque no lo quiero imprimir acá yo lo que quiero hacer es imprimirlo fuera de este método Y en lugar de imprimir el resultado de La suma de a con b yo lo que voy a hacer es retornarlo así que acá vamos a colocar un return perfecto y ahora nosotros podemos
guardar y devolvernos a nuestro switch para llamar al método de calculadora que Nosotros acabamos de crear entonces acá vamos a llamar a calculadora como puedes ver me indica que nosotros tenemos que pasarle la instancia de escáner Así que acá yo le voy a pasar escáner y después de esto lo que tenemos que hacer es capturar el Valor que nos devuelve en este caso vendría siendo el resultado así que vamos a crear una variable que se llama resultado Y luego podemos imprimirla en la consola y que yo voy a bajar un poco voy a pegar mi
system.out println que había recortado antes y después de esto vamos a imprimir también nuestra variable de resultado Así que acá colocamos resultado y guardamos y perfecto con esto nosotros ya podríamos considerar que nuestra aplicación ha Sido refactorizar hay otras cosas que nosotros podríamos mover Pero la verdad es que nosotros no vamos a ganar mucho más de lo que nos nosotros ya hemos ganado con esta refactorización ahora nuestro código se va a ver de la siguiente manera creamos una instancia del escáner y definimos una variable que se llama input esta variable de input se va a
encargar de almacenar el valor de lo que ingrese el usuario dentro de la terminal después nosotros mostramos las Opciones que tiene nuestra aplicación transformamos el input a lowercase y también lo obtenemos del usuario y luego después de esto para el caso número uno que vendría siendo el caso de calculadora Nosotros llamamos al método que se va a encargar de calcular los números después nosotros imprimimos el resultado y hasta ahí ya estamos caso número dos hackeamos La NASA y caso número tres que vendría siendo salir de nuestra aplicación imprimir chao mundo y Después nosotros tenemos un
caso por defecto que es en el caso que el usuario ingrese un comando que no sea válido ahora vamos a ejecutar nuestra aplicación voy a agrandar esto un poco vamos a ejecutar la calculadora vamos a pasar el número 12 después 35 y vemos que el resultado es 47 ahora vamos a hackear la NASA y vemos cómo nos está mostrando hackeando la NASA listo eres hackerman y ahora vamos a cerrar nuestra aplicación con el número tres vemos chao Mundo y así es como finalmente nosotros podemos utilizando los métodos refactorizar nuestras aplicaciones para que sea un poco
más sencillo de [Música] leerlas y llegamos a la sección donde vamos a ver orientación a objetos y vamos a comenzar creando nuestra primera clase para eso nos vamos a devolver aquí a nuestro editor y nos vamos a venir aquí arriba a la izquierda donde dice project y vamos a pinchar acá justamente Dentro de este directorio de src vamos a pinchar también y acá nosotros vamos a hacer un clic derecho vamos a seleccionar New y luego seleccionamos Java Class esto nos va a permitir a nosotros poder crear una clase dentro de Java y acá como puedes
ver tenemos que indicarle el nombre que queremos a nuestra clase Ahora nosotros podríamos indicar el nombre que nosotros queramos pero para que estos vos tengan un poco más de sentido con lo que nos vamos a Topar con la vida real Vamos a ponerle de nombre user Así que utilizando la u con mayúscula vamos a escribir user y luego vamos a seleccionar acá Class perfecto y ahora nosotros podemos cerrar acá donde dice project como puedes ver la forma que nosotros tenemos para poder crear una clase es utilizando derechamente el inspeccionados acá donde nosotros vamos a navegar
sin embargo si no lo queremos crear así lo que podemos hacer es Eliminar este archivo y luego de eliminarlo lo que podemos hacer es clic derecho acá nos vamos a New y aquí en New seleccionamos file y acá Nosotros le vamos a indicar que el nombre del archivo es user Java y presionamos enter una vez que hayamos creado este archivo nos va a aparecer acá punto Java nosotros vamos a ignorar eso porque lo vamos a corregir ahora vamos a escribir Class user y luego colocamos un abre y cierra Paréntesis de llaves con esto nosotros ya
hemos creado una clase en Java lo más probable es que tú te hayas dado cuenta que la forma anterior que nosotros utilizamos para poder crear una clase tenía la palabra reservada de public Sin embargo nosotros vamos a ver mucho más en profundidad esto más adelante cuando estemos hablando sobre los paquetes por ahora podemos nosotros crear nuestras clases solamente así Y fíjate también que yo no he colocado absolutamente nada Aquí entremedio eso también lo vamos a hacer después por ahora quiero que te vayas aquí al archivo de main.jar y acá nosotros vamos a crear ahora una
nueva instancia de nuestra clase de user Así que vamos a escribir user espacio user con la u en minúscula porque recuerda que las instancias se crean con una un minúscula y luego de eso podemos utilizar New user y ahora nosotros podemos guardar de esta manera Nosotros hemos creado nuestro primer objeto y También nuestra primera clase en Java sin embargo esto que nosotros estamos haciendo Por supuesto que no sirve para absolutamente nada Okay creamos una clase de usuario y en base a esta creamos una instancia de usuario sin embargo Cómo yo puedo utilizar esto en un
futuro y eso nosotros lo vamos a ir descubriendo ya con nuestro siguiente video cuando veamos las [Música] propiedades Vamos a continuar ahora Viendo las propiedades Así que nos vamos a devolver a nuestra clase de user para eso tú puedes mantener presionada la tecla de comando o en el caso de Windows mantienes presionada la tecla de control y pinchas acá donde dice user y acá nos vamos a devolver nuevamente a la clase de usuario ahora nosotros vamos a ver la primera propiedad en este caso vamos a decir que se llama name aquí yo lo que tengo
que hacer es Exactamente igual que cuando yo estoy declarando una variable Tengo que indicarle el tipo y después le tengo que indicar el nombre a esta propiedad en este caso es name o sea vamos a hacer referencia al nombre de el usuario Ahora nos podemos devolver aquí a Main jaava y de esta manera nosotros vamos a poder acceder ahora a esta propiedad de name cuando nosotros escribamos user y punto como puedes ver ahora nosotros tenemos la propiedad de name hay otras propiedades y también métodos Pero eso nosotros lo vamos a ver Más adelante cuando hablemos
sobre la herencia pero ahora nos vamos a preocupar solamente de lo que nosotros hemos creado en este caso es name y presionamos enter vemos como intellij autocompleta todo el código y con el símbolo de igualdad le podemos empezar a asignar valores Entonces por ejemplo yo le voy a colocar que el nombre de este usuario es Nicolás y ahora lo que voy a hacer es crear otro usuario también en base a nuestra clase de usuario pero ya No le voy a dar de nombre user le voy a dar de nombre user 2 y ahora voy a
escribir user 2. name y le voy a asignar otro valor el cual va a ser el de Felipe sin embargo si nosotros ahora vamos a imprimir estos valores por ejemplo el nombre de user y también el nombre de user 2 debería amos ver que estos son valores distintos como puedes ver acá yo tengo al usuario Nicolás y también tengo al usuario Felipe De esta manera nosotros podemos tener propiedades Distintas dependiendo de los usuarios que nosotros hayamos creado entonces resumiendo acá cada vez que nosotros queramos crear un usuario nuevo o una nueva instancia de una clase
tenemos que utilizar la palabra reservada de New seguido del nombre de la clase y esto se lo asignamos a una variable que nosotros le podemos dar el nombre que nosotros queramos pero por convención va a ser igual al nombre de la clase pero con minúscula y también por supuesto tenemos Que indicar el tipo de esta después de esto nosotros podemos acceder a sus propiedades utilizando la sintaxis de punto entonces tomamos la instancia del usuario presionamos punto y después de eso podemos acceder a la propiedad de estos [Música] objetos van a existir momentos donde vamos a
querer que las propiedades de nuestros objetos tengan un valor inicial Como por ejemplo podría ser cuando que Queremos generar un ID a estos objetos para poder hacer eso nosotros podemos derechamente venirnos nuevamente a nuestra clase de user y acá vamos a definir la propiedad que queremos que tenga un valor por defecto en este caso va a ser la propiedad de ID Así que yo voy a asignarle el tipo que en este caso va a ser un Double y le voy a indicar que el ID va a ser igual a math Random de esta manera le
estamos asignando una propiedad de ID a nuestra clase de Usuario la cual su valor va a ser un número completamente aleatorio y ahora si nosotros nos venimos nuevamente a nuestro archivo de main jaava Y en lugar de imprimir los nombres vamos a imprimir los ids de estos usuarios guardamos y ejecutamos vamos a ver como este nos está generando números aleatorios pero le estamos asignando un valor inicial sin que nosotros tengamos que cambiarlo después cuando estemos creando una instancia de usuario ya sea aquí o aquí Aquí nosotros estamos cambiando el nombre pero no es necesario que
nosotros le cambiemos el ID y por cierto el ID se utiliza sobre todo en bases de datos para poder asignarle un identificador único a un usuario independiente del sistema o el Software que tú estés utilizando o la plataforma que sea tú siempre vas a tener un identificador Único tú tienes uno en Facebook en instagram en Twitter o en la red social que tú estés utilizando Siempre vas a Tener un identificador único que se te va a asignar solamente a [Música] ti en este video vamos a hablar sobre los métodos en Java pero no los métodos
como los vimos antes sino que ahora vamos a verlo más en un contexto de asignárseles a una clase que nosotros ya hemos creado Así que Comencemos para eso nos tenemos que devolver a nuestro archivo de user.js vamos a agregar nuestro primer Método para poder crear un método tenemos que escribir la palabra reservada de public después el tipo de datos de retorno esto nosotros lo vimos en la sección pasada Yo por ahora le voy a dar void y voy a indicar que su nombre va a ser saludar ahora dentro de los métodos nosotros podemos hacer referencia
a propiedades que se encuentren dentro de la misma clase esto quiere decir que yo aquí en saludar puedo referenciar el nombre del usuario Y también puedo referenciar el ID de esta clase de usuario Así que eso es lo que nosotros vamos a hacer vamos a imprimir en pantalla Hola mundo soy y acá para poder hacer referencia a una propiedad tenemos que escribir la palabra reservada dis punto y el nombre de la propiedad que en este caso es name cuando nosotros estamos utilizando la palabra reservada de dis estamos haciendo referencia a una instancia de la clase
de usuario y quiere decir esto Cuando nosotros creemos una instancia de esta clase por ejemplo un nuevo usuario que en este caso vendría siendo el usuario Nicolás o el usuario Felipe cuando nosotros escribamos dis estamos queriendo decir acá user eso es lo que estamos queriendo decir entonces cada vez que tú vayas a crear un nuevo usuario tienes que pensar que este dis va a venir mágicamente de desde acá hasta el archivo donde tú lo estás llamando y va a aparecer aquí entonces User tiene exactamente el mismo valor que dis y también lo va a tener
aquí en user 2 Qué quiere decir esto significa que el contexto de dis es Dinámico va a depender de la instancia que nosotros estemos creando por ejemplo lo que yo voy a hacer ahora para que nosotros podamos ver esto de mejor manera voy a eliminar estos system.out println y voy a llamar a user punto como puedes ver aquí a acaba de aparecer el método que Nosotros acabamos de crear y llamamos a Saludar y voy a hacer exactamente lo mismo con user 2 voy a volver a llamar aquí a saludar y ahora voy a guardar y
voy a ejecutar mi aplicación como puedes ver me está indicando acá Hola mundo soy Nicolás y Hola mundo soy Felipe De esta manera vamos a devolvernos aquí al archivo es como nosotros podemos hacer referencias a las propiedades de un objeto dentro de la misma [Música] clase van a existir momentos donde Nosotros le vamos a querer asignar un valor a alguna propiedad de algún objeto que nosotros estamos creando en base a una clase pero queremos hacerlo Al momento de crear este objeto Cómo nosotros podemos hacer esto para eso nosotros nos vamos a venir nuevamente aquí a
nuestra clase de user y lo que yo voy a querer hacer es para el caso de la propiedad de name yo voy a querer asignarle un valor pero al momento de estar creando una nueva instancia esto Quiere decir cuando yo esté ejecutando la instrucción de New user yo voy a querer pasarle el el nombre de Nicolás porque yo no quiero estar constantemente creando una clase y luego empezar a asignarle sus propiedades como puedes ver lo estoy haciendo aquí y después lo estoy haciendo aquí yo no quiero hacer eso yo lo quiero hacer solamente Al momento
de crear una instancia para eso es que nosotros vamos a hacer uso del método constructor y el método Constructor es el método que se ejecuta apenas nosotros creamos una instancia de una clase Así que para nosotros poder crear un método constructor tenemos que tener muy en claro Cuál es el nombre de la clase en este caso el nombre de nuestra clase es user Así que para yo poder crear un método constructor de la clase user tengo que darle exactamente el mismo nombre que el nombre de la clase Entonces si mi clase se llama user mi
método constructor se llama user Después acá yo lo que puedo hacer es referencia también a la propiedad de name y también puedo recibir los valores Al momento de crear una instancia así que acá yo le voy a indicar que vamos a recibir un String y que también se va a llamar name ahora yo puedo decir que este nombre se lo quiero asignar a este nombre para hacer eso hacemos uso de This name y que esto va a ser Exactamente igual a name y ahora si es que nosotros guardamos y nos devolvemos Aquí a nuestro archivo
de Java Por supuesto que nos va a indicar que nosotros tenemos unos errores aquí y aquí y por qué porque nosotros tenemos que pasarle un String que diga Cuál es el nombre de este usuario Así que yo voy a tomar acá el String de Nicolás lo voy a recortar y lo pego acá aprovecho de eliminar estas líneas porque ya no las necesito y voy a hacer lo mismo con Felipe así que me vengo para acá pego el String de Felipe perfecto y ahora yo lo Que voy a hacer es guardar y voy a ejecutar mi
aplicación y como puedes ver aquí yo tengo Hola mundo soy Nicolás y también Hola mundo soy Felipe De esta manera es como nosotros podemos asignar valores iniciales a un objeto cuando lo estamos creando a partir de una [Música] clase ya hemos visto Cómo podemos crear propiedades y también Cómo podemos crear dos dentro de una clase pero hay algo que nosotros hemos estado viendo a lo Largo de este curso que la verdad es que no tenía mucho sentido ahora nosotros lo vamos a ver en mucho mayor detalle y es esta palabra reservada de static Qué significa
esta palabra reservada de static como puedes ver esto viene siendo parte del método Main de nuestra clase Main vamos a hacer exactamente esto mismo ahora pero dentro de nuestra clase de usuario vamos a suponer ahora lo siguiente hay propiedades dentro de los usuarios que van a estar cambiando de Manera constante Como por ejemplo nosotros tenemos el ID También tenemos el nombre podríamos tener un correo electrónico y también podríamos tener una contraseña pero van a ver otros datos sobre todo en clases como por ejemplo algunas que hagan referencia a una tabla en una base de datos
que no van a cambiar Como por ejemplo el nombre de la tabla Así que vamos a crearle un nombre de tabla a esta clase de usuario para eso nosotros nos vamos a venir acá Y vamos a crear la variable de table name y Esto va a ser igual a user y vamos a finalizar con un punto y coma ahora el problema que va a tener esto es que si nosotros intentamos acceder a esta propiedad dentro de la misma instancia de los usuarios Como por ejemplo acá yo tengo Table name y le cambiamos el valor a
por ejemplo anchito feliz después cuando yo intente imprimir Table name pero desde user 2 vamos a ver qué es lo que nos muestra vamos a ver Como el valor de este no cambia sigue siendo el mismo que antes y eso no es lo que nosotros queremos porque vamos a seguir haciendo referencia por ejemplo al nombre de la tabla Entonces cómo nosotros podríamos corregir esto transformando el nombre de esta propiedad en estática Así que ahora vamos a hacer lo siguiente en lugar de decir String Table name igual a user vamos a decir static strick Table name
user ahora esto lo que sí va a hacer es Que va a tener que cambiar la forma de cómo se ejecuta nuestro código porque nosotros ahora ya no vamos a poder acceder a la propiedad de table name de The user como puedes ver desapareció Aquí está name saludar ID pero no está Table name Dónde está table name vamos a buscarlo entonces para poder acceder a Table name tenemos que hacerlo desde la clase entonces tengo que escribir user pero con la u con mayúscula punto y ahora podemos acceder a tablename como Puedes ver acá vamos a
presionar enter y voy a aprovechar de recortarlo para poder imprimirlo aquí tenemos Table name vamos a refrescar y como puedes ver ahora tengo nuevamente este String de user pero este String de user se va a repartir para absolutamente todas las instancias de usuario por ejemplo nosotros nos vamos a venir acá nuevamente a user y acá dentro de este mismo método de saludar yo lo que voy a hacer es que en lugar de imprimir dis Pun name voy a imprimir mi propiedad estática de table name ahora si yo lo intento hacer con la palabra reservada de
dis fíjense qué es lo que ocurre me va a indicar un error Por qué porque nosotros no podemos hacer referencias a un miembro estático esto quiere decir a una propiedad estática utilizando la palabra reservada de dis y queremos acceder a esta tenemos que eliminar la palabra reservada de dis ahora si es que nosotros guardamos y ejecutamos nuestra Aplicación pero para ejecutarla Por supuesto que tenemos que venirnos aquí a nuestro archivo Main jaava Ahora sí si la ejecutamos vamos a ver cómo nos está mostrando Hola mundo soy user Hola mundo soy user y después nos muestra
nuevamente user ahora esto para qué nos va a servir Obviamente si nosotros queremos saludar no nos va a servir pero sí nos va a servir Por ejemplo si nosotros queremos guardar un usuario Pero eso yo te lo voy a mostrar ya en Nuestro siguiente video Hola y llegaste hasta el final de este curso Entonces te tiene que haber gustado quiero aprovechar de felicitarte y también sugerirte que lo termines en la academia Hola mundo para que me puedas apoyar te dejo un link en la descripción de este video que cuenta con un descuento para que la
anualidad te salga más barata pero si no te quieres matricular también me puedes apoyar adquiriendo alguno de mis libros que te voy a dejar los links Abajo en la descripción de este video Espero que te haya gustado mucho este curso y que hayas aprendido bastante Así que nos veremos en el próximo hasta la próxima y chao mundo [Música] B [Música]