Java collection API has LinkedList that is internally organized pretty muck like you desire.
But to make direct use of all these previsous and next references that each node has
you should exploit ListIterator, getting it like that
iterator = linkedList.listIterator()
The last one has an API with a bit unintuitive behaviour, but it allows you to facilitate your code with all advantages of a linked list data structure:
you can navigate back and forth by
iterator.next()
iterator.previous()
you can modify the list with
iterator.add()
iterator.remove()
iterator.set()
you also can shift indices both ways and do the rest of things an iterator usually does, but bothways.