Je sais que le titre du son est confus et c'est parce qu'il est. C'est un peu long alors essayez aussi de rester avec moi.Passage tableau dans le constructeur à utiliser sur JList
c'est la mise en page que j'ai mon code conçu
les variables constructeur méthodes. J'essaye aussi de remplir une Jlist complète sur les noms. Je veux aussi obtenir ces noms en utilisant une méthode. alors voilà.
dans mes variables j'ai mon JList. ses noms de contact appelés; J'ai également un tableau qui stocke 5 chaînes qui sont les noms de contacts; Heres le code pour que de toute façon
String contact1;
String contact2;
String contact3;
String contact4;
String contact5;
String[] contactListNames;
JList contactList;
assez simple. puis dans mon constructeur j'ai le JList défini pour se remplir avec le contenu du tableau
String[] contactListNames = new String[5];
JList contactList = new JList(contactListNames);
fillContactList();
cette méthode fillContactList() est à venir sous peu.
maintenant heres où les choses se boules. ive a créé trois méthodes différentes qui ont toujours fonctionné. Im essentiellement essayer de remplir le tableau avec chacun d'eux. c'est le plus simple. il ne définit pas la liste J, il ne fait rien de compilié. tout ce qu'il fait aussi est de remplir le tableau un bit à la fois
public void fillContactList()
{
for(int i = 0;i<3;i++)
{
try
{
String contact;
System.out.println(" please fill the list at index "+ i);
Scanner in = new Scanner(System.in);
contact = in.next();
contactListNames[i] = contact;
in.nextLine();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
malheureusement cela ne fonctionne pas. je reçois l'impression pour le remplir à l'index 0; i quelque chose d'entrée et je reçois une belle grande trace de la pile à partir de
contactListNames[i] = contact;
donc ma question en bref est
pourquoi je ne peux pas remplir le tableau de cette méthode.
********************************************** * 888 ******************************************* 888
trace de la pile sur demande s'il vous plaît remplir la liste à l'index 0
overtone
please fill the list at index 1
java.lang.NullPointerException
at project.AdminMessages.fillContactList(AdminMessages.java:410)
at project.AdminMessages.<init>(AdminMessages.java:91)
at project.AdminUser.createAdminMessages(AdminUser.java:32)
at project.AdminUser.<init>(AdminUser.java:18)
at project.AdminUser.main(AdminUser.java:47)
Pour répondre à votre première question: oui, vous pouvez passer un tableau dans le constructeur d'un JList. Vous devez simplement corriger l'initialisation du tableau, comme @Jeff l'a suggéré ci-dessous. – Ash