A ver si lo he entendido... Lo primero que hacemos es leer la cadena:
// Leemos una cadena
Scanner reader = new Scanner(System.in);
String sCadena = reader.next();
System.out.println("Cadena insertada: " + sCadena);
Ahora la recorremos y vamos insertando en una pila (Stack) y en una cola (LinkedList):
// Metemos cada carácter en una pila y en una cola
Stack<Character> pila = new Stack<Character>();
LinkedList<Character> cola = new LinkedList<Character>();
for (int x=0;x<sCadena.length();x++) {
pila.add(sCadena.charAt(x));
cola.add(sCadena.charAt(x));
}
Te adjunto también la forma en la que se vacían la pila y la cola para que veas que las pilas van apilando los elementos y nos pueden servir para dar la vuelta a una cadena.
// Vaciamos la pila
System.out.println("--Pila--");
while (!pila.empty())
System.out.println(pila.pop());
// Vaciamos la cola
System.out.println("--Cola--");
while (!cola.isEmpty())
System.out.println(cola.pop());
Espero que fuese lo que estabas buscando y sobre todo que te sirva. :-D