Microedition, Klasa buffer/stos

0

Witam, poszukuje klasy buffer/stos czy nie wiem jak to nazwać(i pewnie w tym problem), która będzie potrafiła takie coś:

a.add("1")
a.add("2")
a.add("3")
print a.pop()//"1"
print a.pop()//"2"
print a.pop()//"3"

JAVA ME(MicroEdition)

0
package temp.kolejka;

import java.util.ArrayList;

public class Queue<T> {

	private ArrayList<T> array = new ArrayList<T>();
	
	public static void main(String[] args) {
		Queue<Integer> q = new Queue<Integer>();
		q.add(3);
		q.add(2);
		q.add(1);
		System.out.println(q.pop());
		System.out.println(q.pop());
		System.out.println(q.pop());
	}

	private void add(T elem) {
		array.add(elem);
	}
	
	private T pop() {
		if (array.size() == 0) return null; // albo exception - chyba, że chcesz zawieszanie wątku ?
		T elem = array.get(0);
		array.remove(0);
		return elem;
	}
	
}
0

@up do kolejki to się bardziej nadaje linkedlist niż arraylist

loczek napisał(a)
a.add("1")
a.add("2")
a.add("3")
print a.pop()//"1"
print a.pop()//"2"
print a.pop()//"3"

Stos działa na odwrót.. :F

ten kod wyżej da się za to zmienić na stos w prosty sposób:

return list.remove(list.size()-1);

edit: Tak poza tym w microedition nie ma generyków, więc możesz to <T> wywalić

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