# Collection für Minesweeper



## Nyk (19. Aug 2015)

Hallo, ich muss Minesweeper mit vorgegebenen Klassen und Methoden und teilweise auch Variablen programmieren, bin aber noch nicht so gewandt in der Programmierung, daher hoffe ich das ihr mir weiterhelfen könnt.

Zudem bin ich neu in diesem Forum und hoffe das der Beitrag hier korrekt ist. 


Eclipse gibt mir keine Fehler aus, aber ich muss den Algorithmus testen, und da gibt er mir an, dass der Collections nicht finden kann
"cannot find symbol"


Dies ist die Aufgabenstellung dazu:

_Diese Klasse modelliert einen Container für das Verwalten der Resultate eines Klicks auf ein Feld. Zu besseren Übersicht wird dafür zunächst innerhalb der Klasse die öffentliche Enumeration RevealFieldState mit folgenden Werten erstellt:
_

_FIELD_NOT_REVEALED_
_FIELDS_REVEALED_
_FOUND_MINE_
_Die Klasse selbst stellt folgende Konstruktoren und Methoden zur Verfügung:
_

_public RevealFieldsResult()
Erstellt eine neue RevealFieldsResult-Instanz, die das Ergebnis eines erfolglosen Klicks darstellt._
_public RevealFieldsResult(Collection<Field> fields)
Erstellt eine neue RevealFieldsResult-Instanz mit einer Menge aufgedeckter Felder._
_public Collection<Field> getRevealedFields()
Gibt die im Konstruktor übergebenen Felder zurück. Achten Sie darauf, dass die zurückgegebene Collection unveränderbar (immutable) sein muss!_
_public RevealFieldState getState()
Gibt den encodierten Status des Ergebnisses zurück. Folgende Fälle treten dabei ein:_
_Die übergebene Sammlung ist leer -> FIELD_NOT_REVEALED_
_Die übergebene Sammlung enthält eine Mine -> FOUND_MINE_
_Sonst -> FIELDS_REVEALED_

_
_
und dies mein Algorithmus:

```
package de.uniwue.jpp.minesweeper.model;

import java.util.Collection;
import java.util.Collections;

public class RevealFieldsResult {

   public enum RevealFieldState { //Aufzaehlung der Moeglichkeiten per enum

     FIELD_NOT_REVEALED {
       public String toString() {
         return "Die uebergebene Sammlung ist leer";
       }
     },

     FIELDS_REVEALED {
       public String toString() {
         return "Sonst";
       }
     },

     FOUND_MINE {
       public String toString() {
         return "Die uebergeben Sammlung enthaelt eine Mine";
       }
     };

     /*
      *  jeweilige Formataenderung ueber toString
      */
   }

   private Collection<Field> fields;

   public RevealFieldsResult() { //erfolgloser KLick
     // keine Aktion
   }

   public RevealFieldsResult(Collection<Field> fields) {
     fields = this.fields;
     fields.addAll(fields);
   }

   public Collection<Field> getRevealedFields() { //gibtuebergebene Felder zurueck
     fields = Collections.unmodifiableCollection(fields);
     return fields;
   }

   public RevealFieldState getState() { //gibt Meldungen encodiert zurueck
     return null;
   }
}
```
meine Teampartner und ich kommen mit den Collections (Collection<Field> fields) nicht ganz zurecht, vor allem da wir gezwungen sind es so zu nennen. Vielleicht kann uns hier jemand helfen. Wir würden uns da total freuen und sind auf Hilfe echt angewiesen.


----------



## Maggot (20. Aug 2015)

Hallo. 

1.) Bitte setze den Code in CODE Tags. 

2.) Ihr habt noch einige Fehler bei euch im Code. Auch von der Logik her. Was meinst du genau mit "a gibt er mir an, dass der Collections nicht finden kann "cannot find symbol""? Habe den Code von euch in ein Projekt bei mir getan und da findet Java alles. 

Lg


----------

