Vous n'avez pas besoin de déclarer la taille, ce que vous avez est très bien si vous supprimez le []
supplémentaire:
String MapPath2[];
if(type.equals("comparative"))
MapPath2=args[1].split(",");
Le tableau split
donne de nouveau à vous a la taille appropriée. Si vous avez besoin de connaître la taille résultante, utilisez MapPath2.length
(après l'avoir assigné).
Vous auriez probablement envie de faire quelque chose dans le else
aussi bien, de sorte que MapPath2
a une valeur définie dans les deux cas:
String MapPath2[];
if(type.equals("comparative"))
MapPath2=args[1].split(",");
else
MapPath2=null;
ou de façon plus concise:
String MapPath2[];
MapPath2 = type.equals("comparative") ? args[1].split(",") : null;
(au lieu du null
s il, si ayant un tableau vide est préféré pour la logique ultérieure comme c'est parfois pratique, remplacez null
par new String[0]
au-dessus d'un sd ci-dessous. D'autres fois, il est plus pratique d'avoir le null
comme « aucune donnée » drapeau)
Side note:. Il y a quelques très majoritairement conventions communes de style de code dans le monde Java que vous ferait mieux de utilisez dans votre code:
Les noms de variables doivent commencer par une lettre minuscule, afin de ne pas être confondus avec les noms de classes. Le []
devrait aller avec le nom du type plutôt qu'avec le nom de la variable.
Toujours utiliser {}
même lorsque le corps d'un if
ou else
est seulement une ligne.
Placez des espaces autour des opérateurs et des mots clés pour faciliter la lecture.
Appliquer ces:
String[] mapPath2;
if (type.equals("comparative")) {
mapPath2 = args[1].split(",");
}
else {
mapPath2 = null;
}
Beaucoup gens mettent également else
sur la même ligne que le }
, donc:
String[] mapPath2;
if (type.equals("comparative")) {
mapPath2 = args[1].split(",");
} else {
mapPath2 = null;
}
Ou encore, de façon plus concise:
String[] mapPath2;
mapPath2 = type.equals("comparative") ? args[1].split(",") : null;
Ce n'est pas valide Java. –
En plus de supprimer le '[]' dans l'affectation, cela devrait être correct. 'String.split' retournera le tableau - vous n'avez pas besoin de le pré-allouer. –
Ne nommez pas une variable comme celle-ci. Appelez-le 'mapPath2'. –