Comment implémenter des arguments de ligne de commande en Java

Cet article vous aidera avec une connaissance détaillée des différents arguments de ligne de commande en Java ainsi que des exemples pour une meilleure compréhension.

L'argument de ligne de commande dans Java sont la arguments transmis à un programme au moment où vous l'exécutez. Ils sont stockés au format chaîne et le tableau String est passé au paramètre args [] de la méthode main (). Nous en apprendrons plus à travers ce dossier ci-dessous.



Premier programme Java

Vous souhaitez développer un programme en Java pour imprimer 'Bonjour le monde' À l'écran. Quelles étapes envisagez-vous?



  • Installer JDK sur votre machine.
  • Ensemble chemin et classpath dans votre variable d'environnement disponible dans votre machine.
  • Ouvrez l'éditeur (Bloc-notes dans le cas de Windows) et tapez le programme ci-dessous.
class MyFirstJavaProgram {public static void main (String [] args) {System.out.println ('Hello World')}}
  • Maintenant, vous enregistrez ce programme à un emplacement spécifique, par exemple C: / javaprograms /
  • Vous ouvrez une invite de commande (cmd dans le cas de Windows) accédez à l'emplacement ci-dessus.

Arguments de ligne de commande dans Java Edureka Image 1

  • Vous compilez votre programme en utilisant Javac outil de compilation MyFirstJavaProgram.java dans l'invite CMD



  • Maintenant, vous voulez exécuter votre première application, alors écrivez java MyFirstJavaProgram

  • Tupourra voir Bonjour le monde quand vous appuyez sur Entrer clé.

Arguments de ligne de commande

La syntaxe de la commande java pour lancer une application est

Java [options] classe principale [args]

Ici, options sont les options de ligne de commande telles que -elle, etc. classe principale est le nom de la classe contenant la méthode principale. Plus précisément, la classe que vous souhaitez lancer.



enfin [args] sont les arguments passés à la méthode main. Dans notre programme, nous avons spécifié un tableau de chaînes comme paramètre. Par conséquent, plusieurs arguments peuvent être passés en utilisant des espaces.

Par défaut, l'application Java peut accepter n'importe quel nombre d'arguments, y compris aucun argument de la ligne de commande. Cela peut être utilisé pour spécifier des informations de configuration lorsque application est lancé. Cela signifie supposons que nous ne connaissions pas les détails de la configuration avant d'exécuter l'application.

Ces détails peuvent être réutilisés dans votre application, de sorte qu'il ne soit pas nécessaire codé en dur. Cependant, les informations de configuration peuvent être données dans une chaîne de caractères ou dans un fichier. Est-ce que cela entravera mon Performance de l'application?

La réponse est, Non . Cela n'entravera en aucun cas les performances globales de l'application. Parce que nous ne lisons le fichier de configuration à la fois que lors du démarrage de l'application. De cette façon, vous n'avez pas à recompiler votre code encore et encore.

Disons, par exemple, que nous avons un config.properties fichier qui a toutes les propriétés de configuration dans valeur clé format. Mais en tant que développeur junior, nous ne savons même pas où ce fichier est conservé client emplacement après l'envoi de l'application.

Ce que nous pouvons dire que le client devra spécifier le chemin comme argument de l'application sur le ligne de commande.

java MyClass 'c: //path/to/config.properties'

Lorsque MyClass est lancé, le système d'exécution transmet les arguments de ligne de commande à la méthode principale de l'application via un tableau de String ici, il s'agissait d'un chemin complet.

Considérez, un programme simple pour montrer les entrées faites par l'utilisateur à partir de la ligne de commande sera imprimé lui-même.

quelle est la méthode en javascript
public class MyClass {public static void main (String [] args) {for (String s: args) {System.out.println (s)}}}

Pour exécuter ce programme, l'utilisateur peut entrer une entrée comme ci-dessous.

java MyClass ' J'ai créé mon premier programme. '' C'est génial . '

//Production:

J'ai créé mon premier programme.
C'est génial.

Ceci est à noter que chaque chaîne entre guillemets et séparée par un espace est considérée comme un nouvel argument. Chaque argument est placé sur une nouvelle ligne à cause de println.

Que faire si je veux que Number passe comme arguments de ligne de commande?

Pour pouvoir lire les nombres, nous devons analyser Arguments de ligne de commande numérique . C'est parce que java ne prend qu'un tableau de chaînes comme argument de sa méthode principale. Par conséquent, nous devons convertir l'argument String qui représente un nombre tel que «10» en sa valeur numérique.

Prenons un exemple en construisant un programme.

class SquareCalculator {public static void main (String [] args) {int firstArg if (args.length> 0) {try {firstArg = Integer.parseInt (args [0])} catch (NumberFormatException nfe) {System.out.println ('Arguments' + args [0] + 'doit être un entier.') System.exit (1)} System.out.println ('Square is' + firstArg * firstArg)}}}

Pour exécuter cette application, nous utilisons la ligne ci-dessous

java SquareCalculator dix

//Production:

trouver le plus grand nombre dans le tableau java

Le carré fait 100

Arguments de ligne de commande dans un IDE

La beauté repose sur la méthode parse Int dans la classe Integer. Toutes les classes numériques telles que Integer, Float, Double et ainsi de suite ont parseXXX méthode qui convertit String en objet respectif de leur type.

Comme nous le savons tous, ce tableau commence son index par zéro. Donc args [0] est le premier index de ce Chaîne[] tableau qui est extrait de la console. De même, args [1] est deuxième, args [2] est le troisième élément et ainsi de suite.

Lorsqu'une application est lancée, le Durée Le système transmet les arguments de ligne de commande à la méthode principale de l’application via un tableau de chaînes.

Comment passons-nous l'argument de ligne de commande en utilisant eclipse IDE?

  • Créez une classe ici, j'ai nommé ma classe comme Principale
  • Maintenant, faites un clic droit et cliquez sur Exécuter la configuration
  • Choisir Arguments Tab et entrez valeur en dessous de Arguments des programmes languette
  • Entrez toute valeur que j'ai écrite Bonjour le monde pour séparer deux arguments que j'ai utilisés espace blanc.
  • Cliquer sur appliquer et puis sur Courir
  • Votre sortie sera

//Production:

Bonjour le monde

Ici, les choses à garder à l'esprit sont que l'espace blanc consiste à séparer deux arguments l'un avec l'autre et non à des fins de représentation.

Il s'agissait d'une utilisation de base des arguments de ligne de commande pour une utilisation plus avancée de CLA que nous pouvons utiliser dans la gestion des diagnostics pour la machine virtuelle Hot-Spot. La machine virtuelle peut également être fournie avec des arguments de ligne de commande à l'aide de l'option de machine virtuelle pour le diagnostic des points chauds qui peuvent être utilisés lorsque vous souhaitez appeler un bean à partir de la connexion au serveur. C'est matière à réflexion!

Avec cela, nous arrivons à la fin de cet article «Arguments de ligne de commande en Java». J'espère que vous avez compris les arguments de la ligne de commande en Java et son implémentation à travers quelques exemples en temps réel.

Maintenant que tu as compris Arguments de ligne de commande les bases de cet article, découvrez les par Edureka, une entreprise d'apprentissage en ligne de confiance avec un réseau de plus de 250 000 apprenants satisfaits répartis dans le monde entier. Les cours de formation et de certification Java J2EE et SOA d'Edureka sont conçus pour les étudiants et les professionnels qui souhaitent devenir développeur Java. Le cours est conçu pour vous donner une longueur d'avance dans la programmation Java et vous former aux concepts Java de base et avancés ainsi qu'à divers frameworks Java tels que Hibernate et Printemps .

Vous avez une question pour nous? Mentionnez-le dans la section commentaires de cet article «Arguments de ligne de commande en Java» et nous vous répondrons dans les plus brefs délais.