Bonjour tout le monde,

j'ai un petit soucis sur l'accès sur un MAP, je vais essayer de faire cours,

voila comment je remplis le MAP :
Tout en sachant que Position ici est une interface et ai une Enum;
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
 
final ArenaItem ai;
 
mat.put(new Position() {
					@Override
					public int getX() {
						return x;
					}
 
					@Override
					public int getY() {
						return y;
					}
 
					@Override
					public boolean equals(Object arg0) {
						if (!(arg0 instanceof Position)) {
							return false;
						}
						Position p = (Position) arg0;
						return this.getX() == p.getX()
								&& this.getY() == p.getY();
 
					}
 
					@Override
					public int hashCode() {
						Integer x1 = x;
						Integer y1 = y;
						return Integer.rotateLeft(x1.hashCode(), 16)
								^ y1.hashCode();
					}
				}, ai);

Et j'y accede par la méthode suivante, je créé en faite un nouveau Position que j'envois à une méthode pour faire un get

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
for (int x = 0; x < model.getWidth(); x++) {
			for (int y = 0; y < model.getHeight(); y++) {
				final int i = x;
				final int j = y;
				setCellElements(new Position() {
					@Override
					public int getY() {
						return j;
					}
 
					@Override
					public int getX() {
						return i;
					}
 
					@Override
					public boolean equals(Object arg0) {
						if (!(arg0 instanceof Position)) {
							return false;
						}
						Position p = (Position) arg0;
						return this.getX() == p.getX()
								&& this.getY() == p.getY();
					}
				});
			}
		}
Voici le get
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
	private void setCellElements(Position pos) {
		ArrayList<ArenaItem> elements = new ArrayList<ArenaItem>();
		elements.add(arenaMap.get(pos));
		model.setDeffered(pos.getX(), pos.getY(), elements);
	}
Mon problème est que le arenaMap.get(pos) me renvoi toujours null, alors si vous avez une idée je suis preneur.

Merci pour votre temps