Voila, je veux faire une recherche dans un tableau d'objet avec ce type de fouille.

Par contre, j'ai des problèmes quand à l'implémentation de celui-ci.

Il faudrait q'il recherche dans le tableau d'objet "tabMotsDict".

Merci

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
public class MotDictionnaire {
 
	private String mot;
	private char type;
	private char genre;
	private char nombre;
 
	public MotDictionnaire(String mot, char type, char genre, char nombre) 
	{
 
		this.mot = mot;
		this.type = type;
		this.genre = genre;
		this.nombre = nombre;
 
	}
 
	public String getMot() {
 
		return mot;
 
	}
 
	public char getType() {
 
		return type;
 
	}
 
	public char getGenre() {
 
		return genre;
 
	}
 
	public char getNombre() {
 
		return nombre;
 
	}
 
}
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
public class Dictionnaire
{
	public MotDictionnaire[] tabMotsDict;
 
	public Dictionnaire(){};
 
	public Dictionnaire(MotDictionnaire[] tabMotsDict)
	{
		this.tabMotsDict = tabMotsDict;
	}
 
 
	public MotDictionnaire[] getTabMotsDict() {
		return tabMotsDict;
	}
 
	public void setTabMotsDict(MotDictionnaire[] tabMotsDict) {
		this.tabMotsDict = tabMotsDict;
	}
 
	/*******************************
         * Fonction qui vérifie si un mot existe dans le dictionnaire
         * 
         *Recoit un mot
         * 
         *Retourne un boolean (true / false)
         * 
         */
	public boolean motExiste(String mot) 
	{
		int debut;
		int fin;
		int valeur = 0;
		int milieu = 0;
		int tab[] = new int[100];
		boolean trouve;
 
		debut = 0;
		fin = 100;
		trouve = false;
 
		while(valeur < tab[0] || valeur >= tab[100])
			milieu = debut + ((fin - debut) / 2);
		if(tab[milieu] == valeur)
			trouve = true;
		else
			if(valeur > tab[milieu])
				debut = milieu + 1;
			else
				fin = milieu - 1;
		while(trouve = false && debut < fin);
 
		return trouve;