Java: Liste d'objets
Résolu
Remad
Messages postés
1662
Date d'inscription
Statut
Membre
Dernière intervention
-
Remad Messages postés 1662 Date d'inscription Statut Membre Dernière intervention -
Remad Messages postés 1662 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Java: Liste d'objets
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
5 réponses
Tu ne peux pas utiliser list[0] comme pour un tableau, ici il faut que tu utilises add(E)
Remad
Messages postés
1662
Date d'inscription
Statut
Membre
Dernière intervention
711
Merci, mais je fait comment pour instancier un nouvel objet d'un certain type dans la fonction add(E)? Genre
?
KX
Messages postés
16761
Date d'inscription
Statut
Modérateur
Dernière intervention
3 020
>
Remad
Messages postés
1662
Date d'inscription
Statut
Membre
Dernière intervention
Si tu as bien list de type ArrayList<Question> et TextBasedQuestion extends Question, oui, ça devrait le faire... il faut tester.
Remad
Messages postés
1662
Date d'inscription
Statut
Membre
Dernière intervention
711
>
Remad
Messages postés
1662
Date d'inscription
Statut
Membre
Dernière intervention
Encore merci!!
Sa fonctionne, maintenant, j'aurais une autre petite question, comment on passe un String[] en paramètres? J'ai essayé
Constructeur de MultipleChoiceQuestion:
new MultipleChoiceQuestion("Question 2", "1", ["1", "2", "3", "4"]);sa marche pas, pareil avec des accolades et non des crochets.
Constructeur de MultipleChoiceQuestion:
public MultipleChoiceQuestion(String question, String answer, String[] choices) throws QAInputException, ChoicesException
Deux manières de faire :
public MultipleChoiceQuestion(String question, String answer, String[] choices) new MultipleChoiceQuestion("Question 2", "1", new String[] {"1", "2", "3", "4"}); public MultipleChoiceQuestion(String question, String answer, String...choices) new MultipleChoiceQuestion("Question 2", "1", "1", "2", "3", "4");
Hello tout le monde,
j'aurais encore une petite question:
Comment je peux faire pour savoir si un objet dans ma
J'ai un
Merci d'avance!
j'aurais encore une petite question:
Comment je peux faire pour savoir si un objet dans ma
ArrayList<Question> list = new ArrayList<Question>();est de type Question ou MultipleChoiceQuestion (qui dérive de question)?
J'ai un
private String[] choices;dans MultipleChoiceQuestion qui n'est pas dans Question. Donc, il faudrait que je sache si l'objet instancié dans la liste est de type Question ou non, pour savoir si je dois récupérer les choix de réponses aussi.
Merci d'avance!
Tu peux utiliser (X instanceof Y) qui renvoie vrai si X est un objet :
* de la classe Y
* d'une des classes filles (petites-filles...) de la classe Y.
* d'une classe qui implémente l'interface Y.
* d'une classe qui implémente une des interfaces filles (petites-filles...) de l'interface Y.
* d'une des classes filles (petites-filles...) d'une classe qui implémente l'interface Y.
* d'une des classes filles (petites-filles...) d'une classe qui implémente une des interfaces filles (petites-filles...) de l'interface Y.
* de la classe Y
* d'une des classes filles (petites-filles...) de la classe Y.
* d'une classe qui implémente l'interface Y.
* d'une classe qui implémente une des interfaces filles (petites-filles...) de l'interface Y.
* d'une des classes filles (petites-filles...) d'une classe qui implémente l'interface Y.
* d'une des classes filles (petites-filles...) d'une classe qui implémente une des interfaces filles (petites-filles...) de l'interface Y.
Question q = list.get(i); if (q instanceof MultipleChoiceQuestion) { MultipleChoiceQuestion mq = (MultipleChoiceQuestion) q; String[] c = mq.choices(); // ... }
Euh... Pourquoi Eclipse me sort une alerte "finally block does not compile normally" ?
for (int i=0; i<theQuestions.getNumberQuestions(); i++) { try { if (theQuestions.isMCQ(i)) { System.out.println(i + " is an MCQ"); } else { System.out.println(i + " is not an MCQ"); } } catch (IndexOutOfBoundsException e){ e.printStackTrace(); } finally { continue; } }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ceci sera surement ma dernière question: comment dans ma classe Questionnaire, je peux récupérer la String[] qui est crée seulement par une question de type MCQ? J'essaye sa, sa ne veut pas fonctionner, sa me sort que getChoices n'est pas défini dans la classe Question.
Je te remercie beaucoup par ailleurs!
public String[] getChoiceAnswerMCQ(int number) { if (!isMCQ(number)) { throw new QuestionnaireException("Not an MCQ."); } else { return (list.get(number).getChoices()); } }
Je te remercie beaucoup par ailleurs!
Je pense que c'est comme tout à l'heure, tu dois caster ta Question en MCQ pour lui appliquer la méthode getChoices :
public String[] getChoiceAnswerMCQ(int number) throws QuestionnaireException { if (isMCQ(number)) return ((MCQ) list.get(number)).getChoices()); else throw new QuestionnaireException("Not an MCQ."); }