It is always recommended to perform the data intensive operations using the native database mechanisms.
Things like searching and sorting etc should be performed at the database end so as to lower the foorprint of the object heap of the JVM.
But for linear iterations, any implementation of the List interface is recommended.
However for readonly iterations, you can have a look at the apache FastArrayList class.
See the link here