2013-02-26 5 views
1

Ce pourrait être ma question stupide, mais comment travaillez-vous avec Array chaîne?Comment travailler avec String Array?

Je suis en train de faire quelque chose comme ça, mais mon application plantait lors du lancement.

String names [] = null ; 

    names[0]= "I am"; 
    names[1]= "Ammar"; 

    Toast.makeText(getApplicationContext(), names[1] , Toast.LENGTH_SHORT).show(); 
+1

pouvez-vous publier logcat? –

+0

Vous devez être trouvé ** NullPointerException ** – user2060383

+0

vous devez définir la longueur de chaîne avant de commencer à travailler avec elle vous obtenez NullPointerException ou soit tableau sur l'exception liée becasue votre taille du tableau est égal à zéro et que vous essayez d'accéder au 0 + nième index non défini en Array provoquant ainsi votre application pour obtenir Écraser –

Répondre

0

Essayez de remplacer

String names [] = null ; 

avec

String names[] = new String[2]; 
2

Vous devez créer le tableau, comme tout autre tableau

String names[] = new String[size]; 
+0

votre droite j'ai oublié de la taille. – Ammar

1

vous devez définir la taille du tableau.

String name[] = new String[2];

1

Vous pouvez utiliser:

String[] names = new String[2]; 

names[0] = "I am"; 
names[1]= "Ammar"; 

    Toast.makeText(getApplicationContext(), names[1] , Toast.LENGTH_SHORT).show(); 

peut-être vous obtenez une erreur parce que vous n'avez pas alloué de mémoire pour tableau de chaînes. Vous avez affecté null à la matrice c'est pourquoi l'application plante.

1
String[] names = { "I am", "Ammar" }; 
0

Ce problème est standard avec l'instanciation d'objets. Si vous allez définir une référence, vous devez soit pointer vers un objet existant déjà OU créer une nouvelle référence à l'objet en utilisant le mot-clé new.

Ex:

[Class] x = new [Class]() 

[Class] est l'objet que vous êtes désireux de instancier/utilisation.

Chaque fois qu'une référence d'objet est créée et n'est pas instanciée, cet objet sera initialisé à null.

Ex:

[Class] x; 

après cette ligne, x sera nulle car elle ne dispose pas d'une référence d'objet valide (nouveau ou non).

1

tableau suit le concept d'allocation statique de mémoire afin que vous devez définir la quantité de mémoire ou de la taille dont vous avez besoin avant de l'utiliser.

String[] names = new String[10];