question: public Object [ ] toArray ( ) { fullyLock ( ) ; try { int size = count . get ( ) ; Object [ ] a = new Object [ size ] ; int k = 0 ; for ( Node < E > p = head . next ; p != null ; p = p . next ) a [ k ++ ] = p . item ; return a ; } finally { fullyUnlock ( ) ; } }
target:  Returns an array containing all of the elements in this queue, in proper sequence. <p>The returned array will be "safe" in that no references to it are maintained by this queue.  (In other words, this method must allocate a new array).  The caller is thus free to modify the returned array. <p>This method acts as bridge between array-based and collection-based APIs.