Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Java / Conoce VAR lo nuevo de Java 10

Conoce VAR lo nuevo de Java 10

Autor jc mouse miércoles, abril 18, 2018

Java ha ido evolucionando a pasos agigantados en los últimos años gracias al pedido de su comunidad global de programadores, la última versión de la Maquina Virtual salio este 20 de marzo de 2018 y la versión 11 se espera para septiembre de este mismo año donde (spoiler alert) Java no solo incluirá más novedades, sino que eliminara  otras funcionalidades como JavaFX, pero ojo, JavaFX no muere, sino que sera desacoplada del JDK para estar disponible en descarga separada.

Pero volvamos al tema del post, entre las nuevas funcionalidades que trae java 10 la que se destaca es «var»  (Local-Variable Type Inference) para la definición de variables por inferencia (deducción), característica que algunos lenguajes de programación bastante conocidos ya tienen desde hace mucho tiempo (C++, C#, JavaScript, Scala, Go, etc ) y cuyo objetivo es el de reducir código adicional que se debe escribir en java para declarar una variable.

Nota: Si quieres probar los ejemplos de este post, Netbeans no cuenta con soporte para el JDK 10, pero una buena opción es Eclipse Oxygen 3a que ya viene con soporte incluido sin necesidad de agregar otros plugins.

jdk 10 bolivia

Pero veamos el uso de var y comparemos con las versiones anteriores a java 10

//Java 9 y versiones inferiores
ArrayList<String> lista9 = new ArrayList<>();
URL url9 = new URL("https://www.jc-mouse.net/");
String string9 = "Hola Mundo";

//java 10
var lista10 = new ArrayList<String>();
var url10 = new URL("https://www.jc-mouse.net/");
var string10 = "Hola Mundo";

Cuando el compilador procesa «var«, mira el lado derecho de la declaración y toma ese tipo para la variable. Como se puede observar en el ejemplo, el uso de var nos ahorra algunos caracteres y evita la redundancia en la declaración, algunos programadores consideran que esto otorga mucha libertad a la hora de escribir código y por ende genera malas practicas, por ejemplo en JavaScript una variable puede ser declarada como var a=0; y más adelante puede adquirir el valor de a=»texto»; esto en java 10 no se permite al igual que las siguientes declaraciones:

var nulo = null; //NULL no es valido
var a;//Se debe declarar un valor
var lambda = () -> { };//Necesita tipo objetivo
var lista = { 1 , 2, 3, 4 };//Arreglos necesitan un tipo explicito

var no es una palabra clave o Keyword, es un nombre de tipo reservado, esto quiere decir que puede usarse var como nombre de variable y paquetes. El siguiente código es valido:

String var = "Hello World";
System.out.println(var);

Que pueda usarse no quiere decir que deba usarse, es más, lo recomendable es no hacerlo para evitar conflictos futuros con nuestro código y las nuevas versiones del JDK.

var puede usarse en ciclos, por ejemplo:

var nombres = new ArrayList<String>();
nombres.add("Elma Montt");
nombres.add("Mary Conazo");
nombres.add("Amando Mocha");
for(var nombre : nombres) {
   System.out.println(nombre);
}

var

for(var i = 1 ; i <= 5 ; i++) {
   System.out.println(i);
}

var no se puede usar en métodos como tipo de retorno o para definir a los parámetros, esto porque el compilador no sabría con que tipo reemplazar a la hora de ejecutar el codigo

prohinido

var no permite la declaración compuesta de variables, es decir, la siguiente declaración es incorrecta:

var a = "Juan", b = "Maria";

El uso de var solo esta permitido para variables locales.

var class bad idea

enjoy?!

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Uso del condicional IF

Uso del condicional IF

En este post conocernos lo que son las Estructuras de Control IF en los script de Bash. Estas estructuras nos ayudan a c...

Ejecutar función de postgreSQL desde Java

Ejecutar función de postgreSQL desde Java

Este es una continuación de un tutorial pasado [Funciones en PostgreSQL y pgAdmin], así que si quieres entenderlo mucho...

Generador de códigos QR (Quick Response)

Generador de códigos QR (Quick Response)

En este tutorial aprenderemos a crear nuestra propia aplicación java para generar códigos QR. ¿Que es un Código QR? «Un...

PicarOS: Sistema Operativo Educativo para niños

PicarOS: Sistema Operativo Educativo para niños

PicarOS Diego es una distribución GNU/Linux basada en Debian enfocada principalmente en la educación dentro del aula rec...

Lorca Editor: Corrector ortográfico, gramatical y de estilo OnLine

Lorca Editor: Corrector ortográfico, gramatical y de estilo OnLine

Lorca Editor es una aplicación online creada por el desarrollador español Domingo Martin el cual tiene como objetivo el...

WhatsApp: Aprende a usar la nueva función ‘Estado’

WhatsApp: Aprende a usar la nueva función ‘Estado’

A continuación te mostramos una guía sobre la nueva nueva función ‘estado‘ de WhatsApp.  Primero que nada, a...

Comparte lo que sabes

Categorias

Últimas entradas

Crecen las startups en Bolivia: La mayoría está en Santa Cruz, Cochabamba y La Paz Según el «Mapeo del Ecosistema de Tec...

«Las palabras que elegimos dan forma a nuestra realidad. La Fuente Educada (Polite Type) es una fuente de código abierto...

En este post realizaremos un proyecto en VUE que se conectara a un REST API  y utilizara un servicio del mismo para obte...

En este post realizaremos una aplicación que pueda capturar nuestra voz y convertir en texto Pasar voz a texto con Andro...

Herramientas

Generador de Enlaces a Whatsapp