Nom : Capture du 2017-11-30 19-56-29.png
Affichages : 125
Taille : 21,6 Ko

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
package tpnote;
 
import java.util.AbstractSet;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Objects;
import java.util.Set;
 
public class SetList<T> extends AbstractSet<T> {
	private List<T> thelist;
 
	public SetList(List<T> l) {
			thelist=l;
	}
 
	@Override
	public Iterator<T> iterator() {
 
	return new Iterator<T>() {
 
				private Set<T> set = new HashSet<>();
				private Iterator<T> it = thelist.iterator();
				private T nextelement = null;
 
				@Override
				public boolean hasNext() {
					if (!it.hasNext()) return false;
					nextelement = it.next();
					if (set.contains(nextelement)) return hasNext(); 
					return true;
				}
 
				@Override
				public T next() {
					set.add(nextelement);
					return nextelement;
				}
 
			};
		}
 
		@Override
		public int size() {
			int size = 0;
			Iterator<T> it = iterator();
			while(it.hasNext()) {
				it.next();
				size++;
			}
			return size ;
		}
 
 
		@Override
		public boolean add(T e) {
			if (thelist.contains(e)) return false;
			thelist.add(e);
			return true;
		}
 
		@Override
		public boolean remove(Object o) {
			boolean flag = false;
			Iterator<T> it = thelist.iterator();
			while (it.hasNext()) {
			   T e = it.next();
			   if (Objects.equals(e, o)) {
				   flag=true;
				   it.remove();
			   }
			}
			return flag;
		}
 
	}
on me dit qu'il y a des erreurs dans ce code ,de le*trouver mais j'arrive pas a le voir pouvez vous m'aidez