not check iterator.hasNext?