2014-09-16 6 views
-4

Dans:Comment passer un tableau de chaînes à un programme Java?

public static void main (String [ ] args) 

Comment régler le paramètre variable args valeur de la méthode main comme un tableau de chaîne?

+0

Are u demandent comment transmettre des données dans la principale méthode ?? Pendant l'exécution du code Java que vous passez la valeur qui serait acceptée par chaîne args en utilisant la commande ligne . par exemple java MyProg arg0 arg1 – SamDJava

+0

Ceux-ci sont passés à partir de la ligne de commande. – Matthew

+0

Salut! D'après ce que j'ai compris: cette syntaxe de ligne de commande: java MyProgram --arg1 --arg2 like signifie que dans le compilateur va créer une variable String [] après l'appel de la méthode main. String [] args = new String [] {"arg1", "arg2"}; – iCrazybest

Répondre

2

Les arguments sont des valeurs de ligne de commande facultatives.

java MyProgram --arg1 --arg2 

pourrait être consulté comme

args[0] == "--arg1" 
args[1] == "--arg2" 
+0

Salut RyPope! Par ma compréhension: cette syntaxe de ligne de commande: java MyProgram - arg1 --arg2 comme signifie que dans le compilateur va créer une chaîne de caractères [] après l'appel de la méthode principale. String [] args = new Chaîne [] {"arg1", "arg2"}; – iCrazybest

+0

C'est exact, les arguments deviennent un tableau de chaînes. Si cela vous a aidé, veuillez marquer comme accepté. – RyPope

+0

Merci RyPope! – iCrazybest

0

Lorsque vous exécutez votre programme java dans la ligne de commande, vous pouvez fournir des arguments à l'exécutable:

java MyClass arg0 arg1 arg2

+0

Tks magador! Je comprends comment ça marche. – iCrazybest

0

En Java le mot args contient le command-line arguments qui sont donnés en entrée à votre programme sous la forme d'un tableau de String Objets. En d'autres termes, si vous exécutez java AnExample a b, args contiendra ["a", "b"].

Donc, si vous voulez juste imprimer le contenu de args, vous pouvez faire une boucle à travers eux:

public class HelloWorld { 
    public static void main(String[] args) { 
     for(int i=1; i < args.length; i++) { 
      System.out.println(args[i]); 
     } 
    } 
} 

Pour une profonde du explicitation Java args vous pouvez lire ce interesting presentation de l'université Emory.

+0

Salut Alex! Je comprends comment ça marche. Tks tellement! – iCrazybest

+0

De rien, @ thanphong37vn. Ne pas oublier d'accepter la réponse que vous pensez qu'il correspond le plus;) –

0

Vous pouvez définir un tableau de chaînes lorsque vous appelez le programme.

java MyClass args0 args1 etc

Si vous utilisez Eclipse, puis cela se fait sous Project->Run Configurations/Debug Configurations. Cliquez sur l'onglet Arguments et entrez vos arguments dans la zone Program arguments.

+0

Salut James Fox! Je comprends comment cela fonctionne, Merci votre réponse. – iCrazybest

1

La valeur est passée en arguments de ligne de commande.

Ex, vous avez ce programme (Cmd.java):

public class Cmd 
{ 
    public static void main(String agrs[]) 
    { 
    System.out.println("Values are:"+args[0]+" and "+args[1]); 

    args[0]="New1"; 
    args[1]="New2"; 

    System.out.println("Modified values are:"+args[0]+" and "+args[1]); 
    } 
} 

compilez-like:

javac Cmd.java 

Execute il aime:

java Cmd Value1 Value2 

sortie sera:

Values are Vaue1 and Value2 
Modified values are New1 and New1 

J'espère que vous avez compris le point!

BONUS:

Si vous ne passez pas de valeur lors de l'exécution du programme lancera une ArrayIndexOutOfBoundsException. Vous voudrez peut-être gérer cela!

En savoir plus sur les arguments de la ligne de commande au The Java tutorials (Oracle docs)!

+1

Salut Nivedita! Je comprends comment cela fonctionne, Merci votre réponse. – iCrazybest

0

Le String args[] contient tous les arguments que vous transmettez à un programme Java lorsque vous le lancez avec une ligne de commande.

commande

Exemple pour lancer une application Java:

java MyApp arg1 arg2

Ce que nous avons fait dans l'exemple ci-dessus est nous avons passé 2 arguments à notre MyApp application java ("arg1" et "arg2"). Vous pouvez maintenant les utiliser comme vous le souhaitez.

0

yup .. simplement compiler votre code par

javac <class name> args0 args1 .. 
Questions connexes