Argumentos de linha de comando em Java [com exemplo]

Publicados: 2021-03-03

Ao escrever seus programas Java, você deve ter notado os (String[] args) no método main(). Esses são argumentos de linha de comando armazenados na string passada para o método main. Esses argumentos são chamados de argumentos de linha de comando.

É bastante comum usar argumentos de linha de comando porque você não quer que seu aplicativo faça a mesma coisa em cada execução. Se quisermos configurar seu comportamento de alguma forma, teremos que usar argumentos de linha de comando.

Índice

Qual é o uso de argumentos de linha de comando?

Esses argumentos de linha de comando são passados ​​do console. Eles podem ser recebidos no programa java para serem usados ​​como entrada. Podemos passar quantos argumentos quisermos, pois está armazenado em um array. Aqui está um exemplo de como você pode usar os argumentos da linha de comando.

No programa

teste de classe

{

public static void main(String[] args)

{

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

{

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

}

}

}

No console

java args1 args2 args3 …

Como resultado, obteremos uma saída com esses argumentos, que passamos como entrada. Este programa imprimirá todos esses argumentos separados por uma nova linha:

argumentos1

argumentos2

argumentos3

Como podemos ver, os argumentos de linha de comando só podem ser do tipo String. E se quisermos passar números como argumentos? Digamos que você queira adicionar algo ao argumento que você passa. Se você fizer isso com o programa acima, será algo como:

No programa

teste de classe

{

public static void main(String[] args)

{

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

{

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

}

}

}

No console

teste java 11 12 13

Saída

111

121

131

Você pode ver que ele anexa os caracteres à “String” de números. Para adicionar um número a eles, precisamos converter os argumentos em forma inteira. Para isso usamos o método parseInt() da classe Integer. A implementação será como -

No programa

teste de classe {

public static void main(String[] args) {

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

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

System.out.println(arg + 1);

}

}

}

No console

teste java 11 12 13

Saída

12

13

14

Como você pode ver como obtemos os resultados desejados. Também podemos fazer o mesmo com double() e float() usando parseDouble() e parseFloat().

Às vezes, os argumentos fornecidos não podem ser transformados no tipo numérico específico, o que resultará em uma exceção chamada NumberFormatException.

Agora você pode pensar que estamos passando esses argumentos para nosso aplicativo. Isso afetará o desempenho do aplicativo de alguma forma? A resposta para isso é não. A passagem de argumentos não tornará seu aplicativo lento nem causará outros impactos de desempenho nele. Mesmo que isso aconteça, é muito mínimo e não deve ser perceptível.

Leia: Ideias e tópicos do projeto Java

Argumentos Variáveis ​​em Java

No JDK 5, o Java incluiu um novo recurso que simplifica a criação de métodos que precisam de um número variável de argumentos. Esse recurso é chamado varargs, que significa argumentos de comprimento variável. O método que recebe os argumentos variáveis ​​é chamado de método varargs.

Antes que esse recurso fosse implementado em Java, havia duas maneiras possíveis de passar argumentos variáveis ​​em um aplicativo. Um deles estava usando um método sobrecarregado e outro envolvia passar os argumentos em um Array e depois passar esse array para um método. Ambos os métodos eram propensos a erros. Varargs resolveu todos os problemas que vieram com os métodos anteriores com o benefício adicional de um código limpo e com menos código para trabalhar.

Os argumentos de comprimento variável são especificados com três pontos (…), abaixo está a sintaxe completa para o mesmo –

public static void varMethod(int … x)

{

// corpo do método

}

A sintaxe acima informa ao compilador que varMethod() pode ser chamado com zero ou mais argumentos.

Varargs também pode ser sobrecarregado.

Existem algumas regras para usar varargs:

  • Só pode haver um argumento de variável no método.
  • Os argumentos variáveis ​​devem ser o último argumento.

Ocorrendo um erro ao usar dois argumentos em um método Varargs

void method(String… str, int… a)

{

// Erro de tempo de compilação, pois existem dois varargs

}

Ocorre um erro quando especificamos Varargs como o primeiro argumento em vez do último

void method(int… a, String str)

{

// Erro de tempo de compilação quando vararg aparece

// antes do argumento normal

}

Então, se você quiser passar argumentos variáveis, você pode usar o método varargs.

Aprenda cursos de software online das melhores universidades do mundo. Ganhe Programas PG Executivos, Programas de Certificado Avançado ou Programas de Mestrado para acelerar sua carreira.

Upskill, atualização e atualização

Java é realmente uma linguagem excepcional e está sendo usada por várias corporações e empresas multinacionais para desenvolver aplicativos de grande escala.

O escopo para tais habilidades pode realmente melhorar sua carreira. O upGrad oferece cursos excepcionais em Machine Learning, Codificação em várias linguagens, como Java, C++, C, AI, processamento de linguagem natural e muito mais. Ilumine sua carreira atualizando para a linguagem do futuro: Java!

Se você estiver interessado em aprender mais sobre Java, desenvolvimento de software full-stack, confira o Programa PG Executivo do upGrad & IIIT-B em Desenvolvimento de Software Full-stack, projetado para profissionais que trabalham e oferece mais de 500 horas de treinamento rigoroso, 9+ projetos e atribuições, status de ex-alunos do IIIT-B, projetos práticos práticos e assistência de trabalho com as principais empresas.

Como executar uma classe Java usando a linha de comando?

Para executar uma classe Java usando a linha de comando, ou seja, no prompt do shell, basta digitar o comando java -jar jar_file.jar onde jar_file.jar é o nome do seu arquivo JAR (por exemplo, QuoraAnswerManager.jar). A maneira mais simples de executar uma classe Java na linha de comando é compilá-la e fornecer um caminho de classe para ela. Compile sua classe Java com o seguinte comando: javac -classpath classpathMainFolder myClass.java. Em seguida, execute a classe compilada com o seguinte comando: java -classpath classpathMainFolder myClass.

O que são arquivos jar em Java?

Em Java existem muitos tipos de arquivos jar. Arquivos Jar são simplesmente pacotes. O formato de arquivo JAR foi criado originalmente para Java e destinava-se à distribuição de software. Os arquivos JAR às vezes são chamados de arquivos JAR porque funcionam de maneira semelhante a um arquivo ZIP, pois armazenam vários arquivos e diretórios em um único arquivo para fácil distribuição. Um arquivo JAR às vezes é chamado de Java Archive. Isso não é tecnicamente correto, mas é frequentemente usado na comunidade Java, onde as palavras archive e empacotamento às vezes são usadas para se referir a arquivos JAR.