It would be nice to be able to associate each element in a collection with another element in the collection, which is something very easily done with index based collections, but with sets, etc this isn't so easy... unless i'm having a brainfart.

So i'd like to do this, but Iterator doesn't implement Cloneable... Any reason not to? or is there another way that's missing me?

public class ItClone {

    public static void main(String[] args) {
Set<String> s = Collections.newSetFromMap(new ConcurrentHashMap<String, Boolean>());

        s.add("Fee");
        s.add("Fi");
        s.add("Fo");
        s.add("Fum");

        Iterator<String> it1 = s.iterator();
        while (it1.hasNext()) {
            String v1 = it1.next();

            Iterator<String> it2 = (Iterator<String>) it1.*clone*();
            while (it2.hasNext()) {
                String v2 = it2.next();

                System.out.println(v1 + " <-->" + v2);
            }
        }
    }
}

Reply via email to