I am very curious about that. If you use AtomicIntegerArray with values 0 and 1 you can accomplish the same thing of an AtomicBoolean array. Example:
final Atomi
Actually watching the implementation of AtomicIntegerArray
http://fuseyism.com/classpath/doc/java/util/concurrent/atomic/AtomicIntegerArray-source.html
it seem that it is managed with more attention then I thought.
It doesn't use Objects to store the values, making it more efficient in memory. In fact it uses a simple int[] and then access them in a safe way.
So I think that if you need to use many AtomicInteger it is better to use the AtomicIntegerArray.
AtomicIntegerArray: uses the Unsafe class to make atomic access to a single int[] in the AtomicIntegerArray
AtomicBoolean[]: every single object of the array has it's object(itself) for making atomic access
So I would expect a better performance in a heavy concurrent threaded environment with an AtomicBoolean[], with more memory consumption than the AtomicIntegerArray.