I'm confused as to how that line works. Wouldn't the list.remove delete the first string and then make it impossible to move that string to the end? Shouldn't it be " list.remove(list.add(0)); " instead?