Package spiel_logik

Class Frage

java.lang.Object
spiel_logik.Frage

public class Frage
extends java.lang.Object
Die Klasse Frage speichert den Fragentext sowie die richtige Antwort als auch drei falsche Antworten. Außerdem wird die Schwierigkeit gespeichert.
  • Field Summary

    Fields 
    Modifier and Type Field Description
    static java.lang.String[] ANTWORT_BUCHSTABEN
    Ein Hilfsfeld, damit wir leicht die Fragen mit A B C D nummerieren können.
    static int[] ANTWORT_NUMMERN
    Die Antwortnummern (0 = A, 1 = B, 2 = C, 3 = D).
  • Constructor Summary

    Constructors 
    Constructor Description
    Frage​(java.lang.String fragenText, java.lang.String richtigeAntwort, java.lang.String falscheAntwort1, java.lang.String falscheAntwort2, java.lang.String falscheAntwort3, int schwierigkeit)  
  • Method Summary

    Modifier and Type Method Description
    boolean beantworteFrage​(int antwortNummer)
    Beantworte eine Frage.
    java.lang.String[] gibAntworten()
    Gib alle Fragen als ein Feld zurück.
    java.lang.String gibFragenText()
    Gib den Text der Frage zurück.
    int gibGegebeneAntwort()
    Gib die Index-Position der gegebenen Antwort zurück.
    int gibRichtigeAntwort()
    Gib die Index-Position der richtigen Antwort zurück.
    java.lang.String gibRichtigeAntwortText()
    Gib den Text der richtigen Antwort zurück
    int gibSchwierigkeit()
    Gib die Schwierigkeit der Frage zurück.
    boolean istBeantwortet()
    Zeige an, ob die Frage beantwortet (egal ob falsch oder richtig) wurde.
    boolean istRichtigBeantwortet()
    Zeige an, ob die Frage richtig beantwortet wurde.
    static int konvertiereAntwortBuchstabe​(java.lang.String buchstabe)
    Wandele einen Antwortbuchstaben (a, b, c, d) bzw.
    static java.lang.String konvertiereAntwortNummer​(int antwortNummer)
    Wandelt eine Antwortnummer (0, 1, 2, 3) in einen Antwortbuchstaben (A, B, C, D) um.
    void mischeAntworten()
    Mische die Antworten zufällig.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • ANTWORT_NUMMERN

      public static final int[] ANTWORT_NUMMERN
      Die Antwortnummern (0 = A, 1 = B, 2 = C, 3 = D).
    • ANTWORT_BUCHSTABEN

      public static final java.lang.String[] ANTWORT_BUCHSTABEN
      Ein Hilfsfeld, damit wir leicht die Fragen mit A B C D nummerieren können.
  • Constructor Details

    • Frage

      public Frage​(java.lang.String fragenText, java.lang.String richtigeAntwort, java.lang.String falscheAntwort1, java.lang.String falscheAntwort2, java.lang.String falscheAntwort3, int schwierigkeit)
      Parameters:
      fragenText - Der Text der Frage (Der eigentliche Fragensatz).
      richtigeAntwort - Die richtige Antwort.
      falscheAntwort1 - Die falsche Antwort Nr. 1.
      falscheAntwort2 - Die falsche Antwort Nr. 2.
      falscheAntwort3 - Die falsche Antwort Nr. 3.
      schwierigkeit - Die Schwierigkeit (1-5).
  • Method Details

    • mischeAntworten

      public void mischeAntworten()
      Mische die Antworten zufällig. Dabei muss das Attribut richtigeAntwort aktualisiert werden. Die Methode implementiert das Fisher-Yates-Verfahren.
    • beantworteFrage

      public boolean beantworteFrage​(int antwortNummer)
      Beantworte eine Frage. Die Antwort wird als Integer abgespeichert. So kann man nach dem Spiel eine Auswertung der Fragen anzeigen.
      Parameters:
      antwortNummer - Eine Antwortnummer (0 = A, 1 = B, 2 = C, 3 = D).
      Returns:
      Wahr, wenn die Frage richitg beantwortet wurde.
    • gibSchwierigkeit

      public int gibSchwierigkeit()
      Gib die Schwierigkeit der Frage zurück.
      Returns:
      Die Schwierigkeit der Frage.
    • gibFragenText

      public java.lang.String gibFragenText()
      Gib den Text der Frage zurück.
      Returns:
      Der Text der Frage.
    • gibAntworten

      public java.lang.String[] gibAntworten()
      Gib alle Fragen als ein Feld zurück.
      Returns:
      Alle vier Antworten als eine Feld.
    • gibGegebeneAntwort

      public int gibGegebeneAntwort()
      Gib die Index-Position der gegebenen Antwort zurück.
      Returns:
      Die Index-Position (0-3) der gegebenen Antwort.
    • gibRichtigeAntwort

      public int gibRichtigeAntwort()
      Gib die Index-Position der richtigen Antwort zurück.
      Returns:
      Die Index-Position (0-3) der richtigen Antwort.
    • gibRichtigeAntwortText

      public java.lang.String gibRichtigeAntwortText()
      Gib den Text der richtigen Antwort zurück
      Returns:
      Den Text der richtigen Antwort.
    • konvertiereAntwortNummer

      public static java.lang.String konvertiereAntwortNummer​(int antwortNummer)
      Wandelt eine Antwortnummer (0, 1, 2, 3) in einen Antwortbuchstaben (A, B, C, D) um.
      Parameters:
      antwortNummer - Eine Antwortnummer (0 = A, 1 = B, 2 = C, 3 = D).
      Returns:
      Den Buchstaben (A-D) der Antwort.
    • konvertiereAntwortBuchstabe

      public static int konvertiereAntwortBuchstabe​(java.lang.String buchstabe)
      Wandele einen Antwortbuchstaben (a, b, c, d) bzw. (A, B, C, D) in einen Anwortindexzahl (0, 1, 2, 3) um.
      Parameters:
      buchstabe - a A: 0, b B: 1, c C: 2; d D: 3
      Returns:
      Einen Anwortindexzahl (0, 1, 2, 3).
    • istRichtigBeantwortet

      public boolean istRichtigBeantwortet()
      Zeige an, ob die Frage richtig beantwortet wurde.
      Returns:
      Wahr, wenn die Frage richtig beantwortete wurde.
    • istBeantwortet

      public boolean istBeantwortet()
      Zeige an, ob die Frage beantwortet (egal ob falsch oder richtig) wurde. Diese Methode wird gebraucht, um zu überprüfen, ob eine neue Frage angezeigt werden kann.
      Returns:
      Wahr, wenn die Frage beantwortete wurde.