Zadanie z "Thinking in Java" - prośba o wgląd w kod

0

Witam, mam zadanie z thinking in java gdzie litera poprzedzona + ma zostac dodana do stosu, a gdy pojawi sie - to litera ma zostac usunieta z wierzcholka, troche sie z tym glowie ale ciagle wyrzuca mi blad, oto kod :

public static void main(String[] args) 
    {
        String a = "+B+a+ł---+a+g+a---+n-+w-+l+i+t---+e-+r+k--+a+c+h---";
        Stos <Character> litery = new Stos <Character>();
        for(int i =0; i < a.length() ; i++)
        {
            if(a.charAt(i)=='+')
            {
                litery.push(a.charAt(i+1));
                i++;
            }
            else if(a.charAt(i)=='-');
            {

                litery.pop();
            }

        }
        //System.out.println(litery);

    }

klasa stos

public class  Stos<T> 
{
private LinkedList<T> storage = new LinkedList<T>();
public void push(T v)
    {
        storage.addFirst(v);
    }
public T pop ()
    {
        return storage.removeFirst();
    }
public T peek ()
    {
        return storage.getFirst();
    }

public boolean empty()
    {
        return storage.isEmpty();
    }

public String toString ()
    {
        return storage.toString();
    }

}

Jezeli ktos ma zamiar dawac jakies glupawe przytyki, ze zadanie proste, ze wygooglowac sobie to gtfo, jak ktos chce pomoc to bardzo prosze.
Dzieki i pozdro

1

sprawdź przed usunięciem ze stosu czy jest pusty

0

Dziękuje za pomoc. Wszystko działa jak należy :)

0
        for(int i =0;i<a.length();++i) if(a.charAt(i)=='+')  litery.push(a.charAt(++i)); else litery.pop();
0
_13th_Dragon napisał(a):
for(int i =0;i<a.length();++i) if(a.charAt(i)=='+')  litery.push(a.charAt(++i)); else litery.pop();

świetnie, udało Ci się usunąć formatowanie i znaki nowych linii - jesteś prawdziwym programistą

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0