Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Java - seznam

Zdravím,

mořím už se s tím několik hodin, a nemohu se dobrat žádného řešení.
Tak bych prosil o pomoc, pro Vás to bude nejspíše prkotina.

Mám 2 třídy.
První je hotová: Vec - má metody: getNazev(), jeSebratelna(), equals(), hashCode().
A my máme naprogramovat další třídu: Mistnost a následující metody.
* 1) Vlož věc do místnosti(Vec vec)
* - pokud již je stejné jméno - nepřidávat, jinak ano
* 2) Odeber věc z místnosti(String nazevVeci)
* - vrať instanci, pokud věc není tak vrať null
* 3) public Collerction<Vec> sebratelneVeci ()
* - vrací seznam věcí, které lze v místnosti sebrat - ne všechny!

Vkládám kod s mými marnými pokusy:


import java.util.Collection;
import java.util.ArrayList;

public class Mistnost
{
    //== Datové atributy (statické i instancí)======================================
    public ArrayList<Vec> seznamVeci = new ArrayList<Vec>();
    public String nazevMistnosti;

    //== Konstruktory a tovární metody =============================================
    public Mistnost(String nazevMistnosti) {
        this.nazevMistnosti = nazevMistnosti;
    }

    //== Nesoukromé metody (instancí i třídy) ======================================

    public boolean vlozVec(Vec vec) {
        for (Vec cokoli: seznamVeci) { //projdi seznam
            if(vec.getNazev().equals(cokoli.getNazev())) { //porovnej název s názvama v seznamu
                return false; //pokud se rovnají, tak nepřijdávej
            }
            else { //jinak - přidej do seznamu
                seznamVeci.add(vec);
                return true;
            }
        }
        return true; //k tomu kroku nikdy nedojde???K čemu je?
    }

    public Vec odeberVec(String vec) {
        for (Vec cokoli2: seznamVeci) {
            if (vec.getNazev().equals(vec)) { //nefunguje vec.getNazev, proč???(nepřeloží překladač)
                seznamVeci.remove(vec);
                return vec;
            }
            return null;
        }
    }

    public Collection<Vec> sebratelneVeci() {
        return seznamVeci; //vrací celý seznam, jak jen ty které lze sebrat???
    }

    //== Soukromé metody (instancí i třídy) ========================================
}
Předem díky, uvítám vysvětlení jako tupce, M.

Odpověď na otázku

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny