À l'aide de int à la Place De String: public static void main (int[] args)

J'étais sous l'impression que la principale méthode devait avoir la forme d'un "public static void main (String[] args){}", que vous ne pouvais pas laisser passer int[] arguments.

Toutefois, dans windows en ligne de commande, lors de l'exécution de la suivante .fichier de classe, il a accepté à la fois int et string comme arguments.

Par exemple, à l'aide de cette commande va donner la sortie de "traverses": "java IntArgsTest limons"

Ma question est, pourquoi? Pourquoi serait-ce code d'accepter une chaîne comme argument sans erreur?

Voici mon code.

public class IntArgsTest 
{
    public static void main (int[] args)
    {

        IntArgsTest iat = new IntArgsTest(args);

    }

    public IntArgsTest(int[] n){ System.out.println(n[0]);};

}
Comme pour tous les autres de la réaction, il ne parvient pas pour moi. Cela n'aide pas que vous n'avez pas dit qui JRE ou le système d'exploitation que vous utilisez, mais je fortement suspect que vous n'exécutez pas ce que vous pensez que vous êtes en cours d'exécution.

OriginalL'auteur Monarch Wadia | 2012-04-17