have you considered using java.util.LinkedList?