Pour un projet à l'école je dois créer une Banque avec des compte de banque et des numero de compte unique entre 10000 et 99999. Je suis vraiment perdu dans tous ce que j'essaie de faire et parmi toutes les recherche que j'ai fait je ne trouve pas le moyen de resoudre mon problème :
À ce que je lis, le numéro "unique" d'un compte est donné par :
public void setNumeroCompte(int pNumeroCompte){
int nombreAleatoire = MIN_NBR_CARACTERE + (int)(Math.random() * ((MAX_NBR_CARACTERE - MIN_NBR_CARACTERE) + 1));
}
En dehors du fait qu'aucun champ n'est modifié, il est probable que sur un grand nombre d'initialisations, deux comptes peuvent avoir le même identifiant. Une manière simpliste d'attribuer un identifiant unique est d'utiliser une variable statique qui servira d'identificateur : à chaque création d'un compte, on attribuera au champ numeroCompte cet identificateur tout en n'oubliant pas de modifier cette identificateur. Un exemple :
public class Compte {
private int numeroCompte;
private static int id = 10000;
/** Construits un nouvel objet Compte. */
public Compte() {
// On attribue un identifiant à ce compte qui vaut id
numeroCompte = id;
// On incrémente ensuite la variable id
id++;
}
/**
* Retourne le numero du compte.
*
* @return le numero du compte
*/
public int getNumeroCompte() {
return numeroCompte;
}
/**
* Modifie le numero du compte.
*
* @param numeroCompte
* le nouveau numero du compte
*/
public void setNumeroCompte(int numeroCompte) {
this.numeroCompte = numeroCompte;
}
}
On peut vérifier dans un main :
public static void main(String[] args) {
Compte premier = new Compte();
Compte deuxieme = new Compte();
System.out.println(premier.getNumeroCompte()); // affiche 10000
System.out.println(deuxieme.getNumeroCompte()); // affiche 10001
}
- Edité par Sér 7 décembre 2015 à 3:19:07
Créer un numéro de compte de banque unique
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.