Java: comment initialiser String[]?
Erreur
% javac StringTest.java
StringTest.java:4: variable errorSoon might not have been initialized
errorSoon[0] = "Error, why?";
Code
public class StringTest {
public static void main(String[] args) {
String[] errorSoon;
errorSoon[0] = "Error, why?";
}
}
- Java 8 : stackoverflow.com/a/47769801/1216775
Vous devez vous connecter pour publier un commentaire.
Vous devez initialiser
errorSoon
, comme indiqué par le message d'erreur, vous n'avez qu' déclaré il.Vous avez besoin d'initialiser le tableau de sorte qu'il peut allouer de la bonne mémoire de stockage pour l'
String
éléments avant vous pouvez commencer le réglage de l'index.Si vous seulement déclarer le tableau (comme vous l'avez fait) il n'y a pas de mémoire allouée pour le
String
éléments, mais seulement une poignée de référence pourerrorSoon
, et renvoie une erreur lorsque vous essayez d'initialiser une variable à n'importe quel indice.Comme une note de côté, vous pouvez également initialiser le
String
tableau à l'intérieur d'accolades,{ }
comme si,qui est équivalent à
args = {"new","array"};
Vous aurez àargs = new String[]{"new", "array"};
-- ou --