mastermind.model
Class Guess

java.lang.Object
  extended by mastermind.model.Guess
All Implemented Interfaces:
java.io.Serializable

public class Guess
extends java.lang.Object
implements java.io.Serializable

Klasse für eine Zeile, für einen Rate-Versuch / Hidden-Pattern. Wird für ein einfacheres Verwalten von einem Rate-Versuch verwendet.

See Also:
Serialized Form

Constructor Summary
Guess()
          Default Konstruktor.
Guess(int[] pegs)
          Konstruktor, inkl Farben setzen
Guess(int[] pegs, int score)
          Konstruktor, inkl Farben und Score
 
Method Summary
 Result compareGuess(Guess otherGuess)
          Vergleicht zwei Guess miteinander und gibt die Anzahl Stifte mit richtiger Farbe und richtiger Position (schwarz) sowie nur richtigen Farbe (weiss)zurück.
 boolean equals(java.lang.Object otherGuess)
          Vergleich zwei Guess miteinander.
 int getPeg(int pos)
          Gibt die Aktuelle Farbe an der gewünschen Position zurück
 int[] getPegs()
          Gibt die einzelnen Farben zurück
 int getScore()
          Gibt die Score für diesen Guess zurück
 int hashCode()
          Berechent den HashCode
 void setPeg(int pos, int color)
          Setzt die Farbe von einem einzelnen Steckplatz
 void setPegs(int[] pegs)
          Setzt die einzelnen Farben der Steckplätze
 java.lang.String toString()
          Gibt eine Zeile als String zurück
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Guess

public Guess()
Default Konstruktor. Anzahl Steckplätze: 1


Guess

public Guess(int[] pegs)
Konstruktor, inkl Farben setzen

Parameters:
pegs - Array mit den entsprechenden Farben pro Steckplatz

Guess

public Guess(int[] pegs,
             int score)
Konstruktor, inkl Farben und Score

Parameters:
pegs - Array mit den entsprechenden Farben pro Steckplatz
score - Score für diesen Guess
Method Detail

setPegs

public void setPegs(int[] pegs)
Setzt die einzelnen Farben der Steckplätze

Parameters:
pegs - Array mit den zusetzenden Farben

getPegs

public int[] getPegs()
Gibt die einzelnen Farben zurück

Returns:
Array mit den gesetzten Farben

setPeg

public void setPeg(int pos,
                   int color)
Setzt die Farbe von einem einzelnen Steckplatz

Parameters:
pos - Position [0..n]
color - Farbe an dieser Position

getPeg

public int getPeg(int pos)
Gibt die Aktuelle Farbe an der gewünschen Position zurück

Parameters:
pos - gewünschte Position
Returns:
int Farbe an dieser Position

getScore

public int getScore()
Gibt die Score für diesen Guess zurück

Returns:
Score von diesem Guess

toString

public java.lang.String toString()
Gibt eine Zeile als String zurück

Overrides:
toString in class java.lang.Object
Returns:
guess als String

equals

public boolean equals(java.lang.Object otherGuess)
Vergleich zwei Guess miteinander. Gibt True zurück wenn sie gleich sind.

Overrides:
equals in class java.lang.Object
Parameters:
otherGuess - zu vergleichender Guess
Returns:
gleicheit der zwei Guess

compareGuess

public Result compareGuess(Guess otherGuess)
Vergleicht zwei Guess miteinander und gibt die Anzahl Stifte mit richtiger Farbe und richtiger Position (schwarz) sowie nur richtigen Farbe (weiss)zurück.

Parameters:
otherGuess - Kombination mit der verglichen werden soll
Returns:
Result mit den Anzahl Schwarzen / Weissen Stifte

hashCode

public int hashCode()
Berechent den HashCode

Overrides:
hashCode in class java.lang.Object
Returns:
HashCode des aktuellen Guess