0
votes

Questions aléatoires avec des tableaux

Nous créons une petite application de quiz pour l'université d'un projet. Mais nous ne sommes pas des programmeurs. J'ai maintenant créé 17 questions et les a emballées dans 17 tableaux. La question est toujours à la position 0 du tableau. La réponse est toujours à la position 1 de la matrice. Tout fonctionne aussi correctement. Mais je voudrais insérer un ordre aléatoire. J'ai déjà essayé de changer de cash ou de randomshsh, aucun succès et les réponses ne correspondent plus aux questions.

Je serais très heureux si quelqu'un pouvait nous aider. Merci beaucoup. P>

C'est le 17ème tableau. Je pense que cela n'a aucun sens de les montrer tous. P>

ArrayList<String[]> getFragen() {
    return fragen;


2 commentaires

Déclarez une classe de garder des questions et des réponses ensemble. Mettez des instances de cela dans votre liste de questions, puis mélangez-la.


Je ne comprends pas assez bien votre "design" actuel. Vous pouvez utiliser collections.shuffle shuffle une collection entière ou utiliser math.random pour obtenir un index aléatoire.


3 Réponses :


0
votes

Idéalement, ce dont vous avez besoin est un carte code> entre la question et la réponse, de sorte que même si les questions sont mélangées, vous obtenez toujours la bonne réponse.

Map<String,String> map = new HashMap<>();
map.put("How are you?","I am fine"); // similarly for all questions


1 commentaires

Une carte est définitivement meilleure qu'une matrice ici. Cependant, la carte ne peut pas affecter la signification aux clés et aux valeurs. Je pense qu'une classe est une meilleure solution.



0
votes

À en juger par ce que vous voulez accomplir, il aurait plus de sens de créer une classe selon les exigences de chaque article code> d'origine code>, puis créez un tableau de ces éléments.

du code. Vous avez posté, il semble que vous utilisiez Java, c'est ainsi la partie du code pour créer une classe: p> xxx pré>

Cette classe est équivalente à la matrice de 5 chaînes que vous avez créé. Pour créer un élément de cette classe, faites-le comme: p> xxx pré>

et de même, créez le reste de vos objets. Modifier le nom de DATA01 CODE> et d'autres variables (chaînes) déclarées à l'intérieur de la classe conformément à votre commodité. P>

Puisque vous avez mentionné que vous n'avez pas d'expérience de codage, pour obtenir le Données d'un élément que vous pouvez utiliser: p> xxx pré>

ici, frage1 code> était l'élément que j'ai créé dans l'extrait de code précédent. Et les données présentes dans data01 code> de frage1 code> sont désormais présentes dans résultat code>, vous pouvez utiliser ces données, mais vous le souhaitez. P>

Maintenant, créez une liste d'éléments de frage code>, dans l'extrait de code ci-dessus, je crée frage1 code> de la même manière, créez 16 autres éléments (ou autant que vous Vous voulez)! p>

Créer une arrayliste code> Comme: P> xxx pré>

et mettez ces éléments dans la liste des matrices créée ci-dessus:

String data = random_item.getData01();


0 commentaires

0
votes

Vous devez créer une classe qui détient chaque question et répondez au lieu d'utiliser un tableau ici. La règle de base est que les tableaux doivent être utilisés pour une séquence d'objets similaires. Dans ce cas, "question" et "réponse" ne sont pas similaires, vous ne devriez donc pas utiliser un tableau.

Lorsque vous utilisez cette approche, Shuffling Les questions deviennent assez simples. Vous créez une liste avec des instances de votre nouvelle classe puis mélangez cette liste.


0 commentaires