Accueil Finances personnelles Commande Arguments de ligne en Java - les nuls

Commande Arguments de ligne en Java - les nuls

Table des matières:

Vidéo: Java : arguments de la ligne de commandes 2025

Vidéo: Java : arguments de la ligne de commandes 2025
Anonim

Il était une fois, la plupart des programmeurs Java utilisaient une interface de développement basée sur du texte. Ils ont tapé une commande dans une fenêtre simple, généralement avec un texte blanc sur un fond noir.

Comment ennuyeux!

La fenêtre d'apparence simple porte les différents noms, selon le type de système d'exploitation que vous utilisez. Sous Windows, une fenêtre de texte de ce type est une fenêtre d'invite de commande. Sur un Macintosh et sous Linux, cette fenêtre est le terminal. Certaines versions de Linux et UNIX appellent cette fenêtre un shell.

Quoi qu'il en soit, dans les temps anciens, vous pouviez écrire un programme qui aspirait des informations supplémentaires lorsque vous tapiez la commande pour lancer le programme.

Lorsque vous lancez MakeRandomNumsFile, vous tapez des informations supplémentaires.

Dans l'image ci-dessus, le programmeur tape java MakeRandomNumsFile pour exécuter le programme MakeRandomNumsFile . Mais le programmeur suit java MakeRandomNumsFile avec deux informations supplémentaires: MyNumberedFile. txt et 5 . Lorsque le programme MakeRandomNumsFile s'exécute, le programme aspire deux informations supplémentaires et les utilise pour faire tout ce que le programme doit faire. Le programme aspire MyNumberedFile. txt 5 , mais à une autre occasion le programmeur peut taper SomeStuff 28 ou BunchONumbers 2000 . Les informations supplémentaires peuvent être différentes chaque fois que vous exécutez le programme.

La question suivante est: "Comment un programme Java sait-il qu'il est supposé collecter des informations supplémentaires chaque fois qu'il s'exécute? "Depuis que vous avez commencé à travailler avec Java, vous avez vu cette classe String args [] dans l'en-tête de chaque méthode main . Eh bien, il est grand temps que tu découvres de quoi il s'agit. Le paramètre args [] est un tableau de valeurs String . Ces valeurs String sont appelées arguments de ligne de commande.

Certains programmeurs écrivent

public static void principal (String args [] )

et d'autres programmeurs écrivent

public static void main (String [] args)

Dans les deux cas, args est un tableau de valeurs String .

Utilisation d'arguments de ligne de commande dans un programme Java

Ce bit de code vous montre comment utiliser les arguments de ligne de commande.

Voici comment générer un fichier de nombres

import java. util. Au hasard;

importer java. io. PrintStream;

importer java. io. IOException;

public class MakeRandomNumsFile {

public static void principal (String args [] ) throws IOException {

Générateur aléatoire = new Random ();

if (args.longueur <2) {

Système. en dehors. println ("Utilisation: numéro de fichier MakeRandomNumsFile");

Système. sortie (1);

}

PrintStream printOut = nouveau PrintStream (args [0]);

int numLines = Entier. parseInt (args [1]);

pour (nombre entier = 1; nombre <= nombre de lignes; nombre ++) {

printOut. println (générateur nextInt (10) + 1);

}

printOut. Fermer();

}

}

Si un programme particulier attend des arguments de ligne de commande, vous ne pouvez pas démarrer le programme de la même façon que la plupart des autres programmes normaux. La façon dont vous envoyez les arguments de la ligne de commande à un programme dépend de l'EDI que vous utilisez: Eclipse, NetBeans ou autre. Allmycode. com a des instructions pour fournir des arguments aux programmes utilisant divers IDE.

Lorsque le code commence à s'exécuter, le tableau args obtient ses valeurs. Avec l'exécution illustrée dans l'image ci-dessus, le composant de tableau args [0] prend automatiquement la valeur "MyNumberedFile.txt" , et args [1] devient automatiquement "5" . Ainsi, les instructions d'affectation du programme finissent par avoir la signification suivante:

PrintStream printOut = new PrintStream ("MyNumberedFile.txt");

int numLines = Entier. parseInt ("5");

Le programme crée un fichier nommé MyNumberedFile. txt et définit numLines à 5 . Plus tard dans le code, le programme génère aléatoirement cinq valeurs et place ces valeurs dans MyNumberedFile. txt . Une course du programme vous donne ceci.

Après avoir exécuté le code, où pouvez-vous trouver le nouveau fichier ( MyNumberedFile. Txt ) sur votre disque dur? La réponse dépend de beaucoup de choses différentes. Si vous utilisez un IDE avec des programmes divisés en projets, le nouveau fichier se trouve quelque part dans le dossier du projet. D'une manière ou d'une autre, vous pouvez changer le Listing 11-7 pour spécifier un nom de chemin complet - un nom comme "c: \ Users \ MyName \ Documents \ MyNumberedFile.txt" ou "/ Users / MyName / Documents / MyNumberedFile. Txt" .

Dans Windows, les noms de chemin de fichier contiennent des barres obliques inverses. Et en Java, lorsque vous voulez indiquer une barre oblique inversée dans un littéral de chaîne entre guillemets doubles, vous utilisez une double barre oblique inverse à la place. C'est pourquoi "c: \ Users \ MyName \ Documents \ MyNumberedFile. txt "contient des paires de barres obliques inverses. En revanche, les chemins d'accès aux fichiers dans les systèmes d'exploitation Linux et Macintosh contiennent des barres obliques. Pour indiquer une barre oblique dans une chaîne Java, utilisez une seule barre oblique.

Notez que chaque argument de ligne de commande est une valeur String . Quand vous regardez args [1] , vous ne voyez pas le numéro 5 - vous voyez la chaîne "5" avec un caractère. Malheureusement, vous ne pouvez pas utiliser "5" pour effectuer un comptage. Pour obtenir une valeur int de "5" , vous devez appliquer la méthode parseInt .

La méthode parseInt réside dans une classe nommée Integer. Donc, pour appeler parseInt , vous préférez le nom parseInt avec le mot Entier. La classe Integer a toutes sortes de méthodes pratiques pour faire des choses avec des valeurs int .

En Java, Integer est le nom d'une classe, et int est le nom d'un type primitif (simple). Les deux choses sont liées, mais elles ne sont pas les mêmes. La classe Integer a des méthodes et d'autres outils pour traiter les valeurs int .

Vérification du bon nombre d'arguments de ligne de commande

Que se passe-t-il si l'utilisateur fait une erreur? Que se passe-t-il si l'utilisateur oublie de taper le chiffre 5 sur la première ligne w si vous lancez MakeRandomNumsFile ?

L'ordinateur affecte "MyNumberedFile.txt" à args [0] , mais n'attribue rien aux args [1] . C'est mauvais. Si l'ordinateur atteint jamais l'instruction

int numLines = Integer. parseInt (args [1]);

le programme se bloque avec une ArrayIndexOutOfBoundsException hostile.

Que faites-vous à ce sujet? Vous vérifiez la longueur du tableau args . Vous comparez les arguments . longueur avec 2 . Si le args array comporte moins de deux composants, vous affichez un message à l'écran et quittez le programme.

Le code vous indique comment l'exécuter.

Malgré la vérification de args. longueur , le code n'est toujours pas résistant aux crashs. Si l'utilisateur tape cinq au lieu de 5, le programme prend un piqué avec NumberFormatException . Le deuxième argument de la ligne de commande ne peut pas être un mot. L'argument doit être un nombre (et un nombre entier, à cela). Vous pouvez ajouter des instructions pour rendre le code plus résistant aux balles.

Lorsque vous utilisez des arguments de ligne de commande, vous pouvez entrer une valeur Chaîne avec un espace vide. Entourez simplement la valeur dans les guillemets doubles. Par exemple, vous pouvez exécuter le code ci-dessus avec les arguments "My Big Fat File.txt" 7 .

Commande Arguments de ligne en Java - les nuls

Le choix des éditeurs

Comment envoyer une vidéo et des photos avec Flip Video - Dummies

Comment envoyer une vidéo et des photos avec Flip Video - Dummies

Après avoir pris photos et vidéos d'événements dans votre vie avec votre caméra Flip Video, vous pouvez les envoyer par e-mail à vos amis et aux membres de votre famille. Le partage de films et d'images que vous capturez et créez en envoyant un message e-mail vous permet de toucher et de toucher quelqu'un avec vos créations, même si vous êtes à proximité ...

Comment enregistrer le son séparément pour votre film numérique - Les mannequins

Comment enregistrer le son séparément pour votre film numérique - Les mannequins

Ont parfois besoin d'un réalisateur enregistrer le son en utilisant un appareil séparé de l'appareil photo, enregistrer le son séparément, puis synchroniser le son sur la vidéo plus tard, lors de l'édition. Habituellement, la raison en est d'augmenter la qualité du son enregistré car de nombreuses caméras n'enregistrent pas le son aussi bien que ...

Comment enregistrer une vidéo avec un caméscope Flip - Les nuls

Comment enregistrer une vidéo avec un caméscope Flip - Les nuls

Enregistrant des vidéos avec votre caméra Flip est comme facile comme 1-2-3 (et 4). Avant d'enregistrer une vidéo, vérifiez les indicateurs d'état de votre Flip pour vous assurer que votre caméra est complètement chargée et qu'elle a suffisamment de temps d'enregistrement pour capturer la vidéo que vous voulez filmer. Pour vérifier le niveau de charge de la batterie de votre Flip (ou ...

Le choix des éditeurs

Mot Raccourcis des symboles 2016 - des mannequins

Mot Raccourcis des symboles 2016 - des mannequins

Dans Word 2016 vous pouvez insérer des symboles communs en utilisant ces raccourcis clavier. Utilisez ces raccourcis clavier au lieu de la commande Insérer → Symbole pour insérer des symboles typographiques communs. Symbole Raccourci Tableau de bord Alt + Ctrl + signe moins En tableau Ctrl + signe moins Copyright Alt + Ctrl + C Marque déposée Alt + Ctrl + R Marque Alt + Ctrl + T Ellipsis Alt + Ctrl + période

Mot Raccourcis des symboles 2016 - mannequins

Mot Raccourcis des symboles 2016 - mannequins

En fonction de la manière dont vous choisissez d'utiliser Word 2016, vous risquez de devoir faire face pour un symbole spécial. Avec ces raccourcis clavier, vous pouvez insérer des symboles communs dans Word 2016. Utilisez ces raccourcis clavier au lieu de la commande Insérer → Symbole pour insérer des symboles typographiques communs. Symbole Raccourci Tableau de bord Alt + Ctrl + signe moins En tiret ...

Mot Trucs et astuces pour les tables 2013 - mannequins

Mot Trucs et astuces pour les tables 2013 - mannequins

Dans Word 2013, le texte se déverse dans un tableau sur une cellule base de la cellule. Vous pouvez taper un mot, une phrase ou même un paragraphe. Tout ce texte reste dans la cellule, bien que la cellule change de taille pour accueillir de plus grandes quantités de texte. Vous pouvez mettre en forme la cellule d'une table comme n'importe quel paragraphe de Word, en ajoutant même des marges ...

Le choix des éditeurs

Sexe For Dummies Cheat Sheet - les nuls

Sexe For Dummies Cheat Sheet - les nuls

Que vous vous considériez comme un Don Juan, une Lady Chatterly, ou un novice sexuel , tout le monde peut tirer le meilleur parti du sexe avec un peu plus de connaissances. Vous devriez savoir que les préliminaires sont quelque chose que vous devriez prendre en considération avec chaque interaction que vous et votre partenaire avez, ainsi que la façon de garder les choses ...

Mots et significations liés à la ménopause - mannequins

Mots et significations liés à la ménopause - mannequins

Bien que ce soit loin d'être une liste complète des termes que vous pourriez entendre être utilisé lorsque la ménopause est discutée, les cinq termes essentiels suivants devraient vous aider à comprendre les bases. HRT (hormonothérapie substitutive): Un traitement pour compléter les hormones que vous perdez pendant la ménopause - généralement une combinaison d'œstrogènes, ...

Symptômes qui indiquent que la ménopause est proche - mannequins

Symptômes qui indiquent que la ménopause est proche - mannequins

La plupart des femmes commencent à éprouver des symptômes de ménopause déséquilibrés, alors qu'ils ont encore des règles. Si vous ressentez un ou plusieurs des symptômes suivants, consultez votre médecin - vous pouvez être en train d'aborder le changement. Peau sèche ou cheveux Pensée floue (difficulté à se concentrer) Flutters du cœur (battements de cœur rapides) ...