Warum bekommen wir nicht die Referenz vom zurückgegebenen Objekt?

osion

Bekanntes Mitglied
Hallo

Wir haben das Problem das einer der Test fehlschlägt. Das Problem ist, dass der Test so vorgegeben ist.
1638918627323.png

Wir machen folgendes:
Java:
public class Field {
    private Point coordinate;
    private Config.Land land;
    private Integer diceNumber;

    /**
     * The constructor of the class fields
     *
     * @param coordinate coordinate of the field
     * @param land       type of land
     * @param diceNumber the dice number on a field
     */
    public Field(Point coordinate, Config.Land land, Integer diceNumber) {
        this.coordinate = coordinate;
        this.land = land;
        this.diceNumber = diceNumber;
    }

    public Config.Land getLand() {
        return land;
    }

    public Integer getDiceNumber() {
        return diceNumber;
    }

    public Point getCoordinate() {
        return coordinate;
    }

    /**
     * Get the field corners
     *
     * @return list of corners
     */
    public List<Point> getCorners() {
        return List.of(new Point(getCoordinate().x, getCoordinate().y - 2), // N (top)
                new Point(getCoordinate().x + 1, getCoordinate().y - 1), // NE (top right)
                new Point(getCoordinate().x + 1, getCoordinate().y + 1), // SE (bottom right)
                new Point(getCoordinate().x, getCoordinate().y + 2), // S (bottom)
                new Point(getCoordinate().x - 1, getCoordinate().y + 1), // SW (bottom left)
                new Point(getCoordinate().x - 1, getCoordinate().y - 1) // NW (top left)

        );
    }

    @Override
    public String toString()
    {
        return getLand().toString();
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }

        if (!(o instanceof Field)) {
            return false;
        }

        Field other = (Field) o;

        return getCoordinate().equals(other.getCoordinate()) &&
                getDiceNumber().equals(other.getDiceNumber()) &&
                getLand().equals(other.getLand());
    }

    @Override
    public int hashCode() {
        int result = 17;
        if (getCoordinate() != null) {
            result = 31 * result + getCoordinate().hashCode();
        }
        if (getLand() != null) {
            result = 31 * result + getLand().hashCode();
        }
        if (getDiceNumber() != null) {
            result = 31 * result + getDiceNumber().hashCode();
        }
        return result;
    }
    
    
}
Java:

Test:
Java:
public void requirementLandPlacementTest() {
        SiedlerGame model = new SiedlerGame(DEFAULT_WINPOINTS, DEFAULT_NUMBER_OF_PLAYERS);
        assertTrue(Config.getStandardLandPlacement().size() == model.getBoard().getFields().size(),
                "Check if explicit init must be done (violates spec): "
                        + "modify initializeSiedlerGame accordingly.");
        for (Map.Entry<Point, Config.Land> e : Config.getStandardLandPlacement().entrySet()) {
            assertEquals(e.getValue(), model.getBoard().getField(e.getKey()),
                    "Land placement does not match default placement.");
        }
    }

Eigentlich müssten beide die gleiche Referenz haben (siehe toString). Müssen wir jetzt die ganze Klasse wegwerfen?
 
M

Mart

Gast
Java:
for (Map.Entry<Point, Config.Land> e : Config.getStandardLandPlacement().entrySet()) {
            assertEquals(e.getValue(), model.getBoard().getField(e.getKey()),
                    "Land placement does not match default placement.");
entweder ist in e.getValue() schmarn drin
oder im model ist schmarn drin

aber die SiedlerGame klasse ist nicht gezeigt, dh model kann nicht überprüft werden
zusätzlich sihet man nicht was in e.getValue eingetragen wurde

also kann man weder das eine noch das andere beurteilen
 

berndoa

Top Contributor
Ich meinte das, was Mart auch sagt:
Die Klasse "Siedlergame" ist oben nicht gezeigt, daher wießnmkan auch nicht was dort zulässig ist oder auch nciht
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Klassen Kann eine Variable nicht aus einer Klasse bekommen Java Basics - Anfänger-Themen 9
krgewb Antwort bei DELETE bekommen? Java Basics - Anfänger-Themen 2
I XML einlesen und Objekte bekommen Java Basics - Anfänger-Themen 2
I Dateigröße von einem InputStream oder byte[] bekommen Java Basics - Anfänger-Themen 2
I Lambda map -> Children bekommen Java Basics - Anfänger-Themen 1
G Methoden Informationen aus zwei Objekte bekommen? Java Basics - Anfänger-Themen 6
B Map<String, FilterMeta, wie Wert bekommen? Java Basics - Anfänger-Themen 4
M Java GUI explorer aufrufen um Pfad zu bekommen Java Basics - Anfänger-Themen 3
C Projekte in 2 versch. Arbeitsbereichen: auf ein Projekt verweisen (ohne Fehler zu bekommen) Java Basics - Anfänger-Themen 8
P Speziellen Dateipfad bekommen Java Basics - Anfänger-Themen 6
B Von Array nur eine bestimmte Anzahl bekommen Java Basics - Anfänger-Themen 3
B Nächster möglicher Tag bekommen / Nächste mögliche Zeit bekommen Java Basics - Anfänger-Themen 24
B Name von Verzeichnis bekommen - Files von einem Ordner auslesen Java Basics - Anfänger-Themen 4
A Zufälliges Objekt basierend auf Wahrscheinlichkeiten bekommen. Java Basics - Anfänger-Themen 4
A jar File kleiner bekommen Java Basics - Anfänger-Themen 3
B ID von unterschiedlichen Objekten bekommen? Java Basics - Anfänger-Themen 2
B Geocoding Information bekommen (Längen -/ Breitengrad) Java Basics - Anfänger-Themen 9
B API für Längen und Breitengrad zu bekommen Java Basics - Anfänger-Themen 2
L Variablen Parameter bekommen Java Basics - Anfänger-Themen 13
B Liste von Integer -> Nächster Wert bekommen Java Basics - Anfänger-Themen 5
B Jeweils den Parent bekommen -> mehrere Ebenen Java Basics - Anfänger-Themen 2
B Webservice -> alle parameter bekommen von form Java Basics - Anfänger-Themen 2
DaCrazyJavaExpert Threads Klicks pro Sekunde parallel zum Programm bekommen Java Basics - Anfänger-Themen 5
T Extrahiertes Objekt durch Getter bekommen Java Basics - Anfänger-Themen 2
U Filetype bekommen Java Basics - Anfänger-Themen 12
J GridPane per Maus Zelle bekommen, wie? Java Basics - Anfänger-Themen 4
B Registry Key bekommen Java Basics - Anfänger-Themen 1
B MySQL Path bekommen Java Basics - Anfänger-Themen 40
B "Vor" Verzeichnis bekommen Java Basics - Anfänger-Themen 1
B Alle Attribute von Klasse bekommen und ändern Java Basics - Anfänger-Themen 12
B Dateityp von File bekommen Java Basics - Anfänger-Themen 2
M Exception soll Werte mitgeliefert bekommen Java Basics - Anfänger-Themen 12
K Methoden String aus Anführungszeichen bekommen Java Basics - Anfänger-Themen 3
I Locale (bspw. de_DE) bekommen von Locale.getISOCountries Java Basics - Anfänger-Themen 0
D Interface namen bekommen Java Basics - Anfänger-Themen 3
O Auflösung einer Bild-Datei bekommen ohne sie herunterzuladen?? Java Basics - Anfänger-Themen 7
P Element aus einer einelementigen Menge bekommen. Java Basics - Anfänger-Themen 8
L Webservice soll InputStream übergeben bekommen Java Basics - Anfänger-Themen 7
A Problem: Datums-String in int[] zu bekommen Java Basics - Anfänger-Themen 11
E Objekt bekommen, welches die Methode aufruft? Java Basics - Anfänger-Themen 15
I Nummern/Text aus String bekommen Java Basics - Anfänger-Themen 21
M Java URLConnection schneller bekommen Java Basics - Anfänger-Themen 3
I Aus einem String Vorname & Nachname bekommen Java Basics - Anfänger-Themen 2
M Informationen von externem Programm bekommen (Firefox) Java Basics - Anfänger-Themen 6
C BlueJ zum Laufen bekommen Java Basics - Anfänger-Themen 14
N Koordinaten aus Area bekommen? Java Basics - Anfänger-Themen 3
I Einzelnes Objekt einer Klasse bekommen Java Basics - Anfänger-Themen 9
K Datentypen Klassenname per String angeben und .class bekommen Java Basics - Anfänger-Themen 6
B Ersten Eintrag aus einer Map bekommen Java Basics - Anfänger-Themen 11
D JButton transparent bekommen? Java Basics - Anfänger-Themen 5
R URL eines Jar bekommen? Java Basics - Anfänger-Themen 5
B vorletzten Wert aus einer Reihe bekommen Java Basics - Anfänger-Themen 6
DStrohma Index einer markierten Zeile aus einer JList bekommen? Java Basics - Anfänger-Themen 5
O DocumentListener -> Name des JTextFields bekommen Java Basics - Anfänger-Themen 2
N Mit MouseEvent und JComponent Elementnamen bekommen Java Basics - Anfänger-Themen 5
G Datenbank über Nummer, Daten bekommen Java Basics - Anfänger-Themen 4
G wurzel durch probieren in einer schleife bekommen Java Basics - Anfänger-Themen 5
S Aktuelle Zeile bekommen Java Basics - Anfänger-Themen 2
S Woher Packages bekommen? Wie installieren? (Netbeans) Java Basics - Anfänger-Themen 4
L Inhalt eines Textfeldes bekommen Java Basics - Anfänger-Themen 3
M parent process in die Hand bekommen Java Basics - Anfänger-Themen 2
L Objekt wieder aus einem Vector bekommen! Java Basics - Anfänger-Themen 14
L Model einer Table bekommen Java Basics - Anfänger-Themen 6
R Farbwert bekommen Java Basics - Anfänger-Themen 11
W Sieht jemand was, was ich nicht sehe...? (Debugging) Java Basics - Anfänger-Themen 10
A Signierte Exe Datei funktioniert nicht mehr Java Basics - Anfänger-Themen 1
A Signierte Exe Datei funktioniert nicht mehr Java Basics - Anfänger-Themen 3
C my_table.setRowSelectionAllowed(true) funktioniert nicht; Java Basics - Anfänger-Themen 0
B Warum funktioniert die Lösung von CodeGym aber meine nicht? Java Basics - Anfänger-Themen 3
P Wo NUR (!) JRE v18 oder v21 herunterladen? Also nicht volles JDK Java Basics - Anfänger-Themen 1
J shuffle cards wird nicht ausgeführt. Java Basics - Anfänger-Themen 2
J JTextField -> CaretPos bei SelectionStart() setzten nicht bei SelectionEnd() Java Basics - Anfänger-Themen 20
W Java-PRogramm liest als EXE-File Nicht USB, jedoch aus NetBeans Java Basics - Anfänger-Themen 45
I Webservice funktioniert nicht Java Basics - Anfänger-Themen 5
C Abbruch einer Schleife mit break, meine Übung funktioniert nicht richtig Java Basics - Anfänger-Themen 4
SarahXyy Ergebnisse stimmen nicht überein? Java Basics - Anfänger-Themen 11
thomas55 Erste Schritte Modul läuft in IntelliJ, nicht in NetBeans Java Basics - Anfänger-Themen 11
G Nicht ausführbares JAR, externe jars mit einbinden Java Basics - Anfänger-Themen 7
S Erstes Programm: Hallo Welt funktioniert nicht. Java Basics - Anfänger-Themen 3
O Obfuscateter Code lässt sich nicht ausführen? Java Basics - Anfänger-Themen 7
A "Hello World"-Programm läuft nicht Java Basics - Anfänger-Themen 16
G Regex greift nicht richtig Java Basics - Anfänger-Themen 4
G JTable den angezeigten WERT nicht den Wert aus dem Model ausgeben. Java Basics - Anfänger-Themen 3
G JTable Header ausgeblendete (width = 0) nicht per mouseDragged aufziehen. Java Basics - Anfänger-Themen 9
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
K Warum wird mir auf der Konsole des Servers nicht "xxxx" angezeigt (Server/Client) Java Basics - Anfänger-Themen 4
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1
G JTable effektiv angezeigter Text ausgeben nicht Inhalt vom Model Java Basics - Anfänger-Themen 9
S nach Import von jars (PLC4x) in Eclipse kann nicht mehr compiliert werden Java Basics - Anfänger-Themen 9
J Datenüberwachung funktioniert nicht Java Basics - Anfänger-Themen 9
S Wie debugge ich dies am besten: SingleThreadExecutor führt Task nicht aus..? Java Basics - Anfänger-Themen 29
H JDK installieren jdk-21 wird nicht erkannt Java Basics - Anfänger-Themen 13
N Klassen Hintergrundfarbe in JPanel ändert sich nicht Java Basics - Anfänger-Themen 3
K Warum wird mir "Empfangen vom Client:" nicht sofort ausgegeben(Server/Client) Java Basics - Anfänger-Themen 3
mo13 JTextField funktioniert nicht Java Basics - Anfänger-Themen 4
G .jar datei öffnen funktioniert nicht Java Basics - Anfänger-Themen 17
M Methode zielnah zeigt das gewünschte Ausgabe nicht an Java Basics - Anfänger-Themen 3
K Verstehe Rekursion nicht ganz Java Basics - Anfänger-Themen 7
M OOP Brüche nicht richtig berechnen Java Basics - Anfänger-Themen 3
N Ich kriege ganze zeit die Fehlermeldung "Inhalt der Zwischenablage kann nicht in die ausgewählten Elemente eingefügt werden" hat jemand eine Lösung? Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben