Si no se sabe cuantos valores se van a a imprimir, se podrían guardar en un LinkedList para asegurar el orden, y luego imprimirlos así:
Código:
int numValores = listaValores.size();
boolean primero = true;
for(int i=0 ; i<numValores ; i++){
if(primero){
system.out.println(listaValores.get(0));
listaValores.remove(0);
primero = false;
}else{
system.out.println(listaValores.get(listaValores.size() - 1));
listaValores.remove(listaValores.size() - 1));
primero = true;
}
}
Quizás es un poco cutre de esta forma, pero así de primeras se me ocurre esta solución.
Espero haberte ayudado. Saludos!!