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