Argumentos de línea de comandos en Java [con ejemplo]

Publicado: 2021-03-03

Mientras escribía sus programas Java, debe haber notado (String[] args) en el método main(). Estos son argumentos de la línea de comandos que se almacenan en la cadena que se pasa al método principal. Estos argumentos se denominan argumentos de línea de comandos.

Es bastante común usar argumentos de línea de comandos porque no desea que su aplicación haga lo mismo en cada ejecución. Si queremos configurar su comportamiento de alguna manera, tendremos que usar argumentos de línea de comandos.

Tabla de contenido

¿Cuál es el uso de argumentos de línea de comandos?

Estos argumentos de la línea de comandos se pasan desde la consola. Se pueden recibir en el programa java para ser utilizados como entrada. Podemos pasar tantos argumentos como queramos, ya que se almacena en una matriz. Aquí hay un ejemplo de cómo puede usar los argumentos de la línea de comando.

En el programa

prueba de clase

{

public static void main(String[] args)

{

for(int i=0;i< argumentos.longitud;++i)

{

System.out.println(args[i]);

}

}

}

en consola

java args1 args2 args3 …

Como resultado, obtendremos una salida con estos argumentos, que pasamos como entrada. Este programa imprimirá todos estos argumentos separados por una nueva línea:

argumentos1

argumentos2

args3

Como podemos ver, los argumentos de la línea de comandos solo pueden ser de tipo String. ¿Qué pasa si queremos pasar números como argumentos? Digamos que desea agregar algo al argumento que pasa. Si lo haces con el programa anterior, será algo como:

En el programa

prueba de clase

{

public static void main(String[] args)

{

for(int i=0;i< argumentos.longitud;++i)

{

System.out.println(args[i]+1);

}

}

}

en consola

prueba java 11 12 13

Producción

111

121

131

Puede ver que agrega los caracteres a la "Cadena" de números. Para agregarles un número, necesitamos convertir los argumentos en forma de número entero. Para ello utilizamos el método parseInt() de la clase Integer. La implementación será como –

En el programa

prueba de clase {

public static void main(String[] args) {

for (int i = 0; i <args.longitud; ++i) {

int arg = Integer.parseInt(args[i]);

Sistema.salida.println(arg + 1);

}

}

}

en consola

prueba java 11 12 13

Producción

12

13

14

Como puede ver cómo obtenemos los resultados deseados. También podemos hacer lo mismo con double() y float() usando parseDouble() y parseFloat().

A veces, los argumentos que se proporcionan no se pueden convertir en el tipo numérico específico, lo que dará como resultado una excepción denominada NumberFormatException.

Ahora podría pensar que estamos pasando estos argumentos a nuestra aplicación. ¿Afectará el rendimiento de la aplicación de alguna manera? La respuesta a eso es no. Pasar argumentos no ralentizará su aplicación ni tendrá ningún otro impacto en el rendimiento. Incluso si lo hace, es muy mínimo y no debería notarse.

Leer: Ideas y temas de proyectos Java

Argumentos variables en Java

En JDK 5, Java incluyó una nueva función que simplifica la creación de métodos que necesitan un número variable de argumentos. Esta función se llama varargs, que significa argumentos de longitud variable. El método que toma los argumentos de la variable se denomina método varargs.

Antes de que esta función se implementara en Java, había dos formas posibles de pasar argumentos variables en una aplicación. Uno de ellos estaba usando un método sobrecargado y otro implicaba pasar los argumentos en una matriz y luego pasar esa matriz a un método. Ambos métodos eran propensos a errores. Varargs resolvió todos los problemas que surgieron con los métodos anteriores con el beneficio adicional de un código limpio y menos para trabajar.

Los argumentos de longitud variable se especifican con tres puntos (...), a continuación se muestra la sintaxis completa para el mismo:

public static void varMethod(int … x)

{

// cuerpo del método

}

La sintaxis anterior le dice al compilador que se puede llamar a varMethod() con cero o más argumentos.

Varargs también se puede sobrecargar.

Hay algunas reglas para usar varargs:

  • Solo puede haber un argumento variable en el método.
  • Los argumentos variables deben ser el último argumento.

Ocurre un error al usar dos argumentos en un método Varargs

método vacío (Cadena… str, int… a)

{

// Error de tiempo de compilación ya que hay dos varargs

}

Se produce un error cuando especificamos Varargs como el primer argumento en lugar del último

método vacío (int… a, String str)

{

// Error de tiempo de compilación cuando aparece vararg

// antes del argumento normal

}

Entonces, si desea pasar argumentos variables, puede usar el método varargs.

Aprenda cursos de software en línea de las mejores universidades del mundo. Obtenga programas Executive PG, programas de certificados avanzados o programas de maestría para acelerar su carrera.

Mejorar, Mejorar y Actualizar

De hecho, Java es un lenguaje excepcional y está siendo utilizado por varias corporaciones y empresas multinacionales para desarrollar aplicaciones a gran escala.

El alcance de tales habilidades realmente puede mejorar su carrera. upGrad ha estado brindando cursos excepcionales en aprendizaje automático, codificación en muchos idiomas, como Java, C ++, C, AI, procesamiento de lenguaje natural y mucho más. Ilumina tu carrera actualizándote al lenguaje del futuro: ¡Java!

Si está interesado en obtener más información sobre Java, desarrollo de software de pila completa, consulte el programa Executive PG de upGrad & IIIT-B en desarrollo de software de pila completa, que está diseñado para profesionales que trabajan y ofrece más de 500 horas de capacitación rigurosa, 9+ proyectos y asignaciones, estado de exalumno de IIIT-B, proyectos finales prácticos prácticos y asistencia laboral con las mejores empresas.

¿Cómo ejecutar una clase de Java usando la línea de comando?

Para ejecutar una clase de Java utilizando la línea de comandos, es decir, desde el indicador de shell, simplemente escriba el comando java -jar jar_file.jar, donde jar_file.jar es el nombre de su archivo JAR (p. ej., QuoraAnswerManager.jar). La forma más sencilla de ejecutar una clase Java en la línea de comandos es compilarla y proporcionarle una ruta de clase. Compile su clase Java con el siguiente comando: javac -classpath classpathMainFolder myClass.java. Luego ejecute la clase compilada con el siguiente comando: java -classpath classpathMainFolder myClass.

¿Qué son los archivos jar en Java?

En Java hay muchos tipos de archivos jar. Los archivos jar son simplemente paquetes. El formato de archivo JAR se creó originalmente para Java y estaba destinado a la distribución de software. Los archivos JAR a veces se denominan archivos JAR porque funcionan de manera similar a un archivo ZIP, ya que almacenan múltiples archivos y directorios dentro de un solo archivo para facilitar su distribución. Un archivo JAR a veces se conoce como archivo Java. Esto no es técnicamente correcto, pero se usa a menudo en la comunidad de Java, donde tanto la palabra archivo como el empaquetado se usan a veces para referirse a archivos JAR.