Java probleme arraylist size()

Résolu
nickie -  
mype Messages postés 2435 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
voila j'ai une methode recherche d'un compte par numero de compte, jai donc un arraylist compte qui contient des comptes avec nom , prenom, numero de compte etc...

public void recherche_compte(int numero_new_compte){
for (int i=0;i<compte.size();i++) {
if (compte.get(i).equals(numero_new_compte)) {
System.out.println("compte trouvé");// c 'est juste un test apres cette ligne sera modifier
}
}
}

parcontre quant je compile j'ai deux erreur dans cette methode:

cannot find symbol
symbol : method size()
location: class compte
for (int i=0;i<compte.size();i++) {
^
cannot find symbol
symbol : method get(int)
location: class compte
if (compte.get(i).equals(numero_new_compte)) {
^
2 errors

jai regarder dans l'api , jai bien defini les deux metode size et get donc je ne comprend pas

merci de m'aider
A voir également:

6 réponses

mype Messages postés 2435 Date d'inscription   Statut Membre Dernière intervention   437
 
mets ta classe en entier pour qu'on voit mieux le probleme...
1
mype Messages postés 2435 Date d'inscription   Statut Membre Dernière intervention   437
 
tu n'as pas respecté la caste c'est Compte avec une majuscule...
donc ça donne
 for (int i=0;i<Compte.size();i++) {
		  if (Compte.get(i).equals(numero_new_compte)) {
1
nickie
 
raa merci j'ai galèré pendant une heure la, faire lire son code par un autre est très efficace
merci
0
Utilisateur anonyme
 
Salut,

Ok, c'est une array, et c'était bien précisé.

Dan
0
Utilisateur anonyme
 
Bonjour,

// si le tableau se nomme compte[]

erreur 1:
for (int i=0;i<compte.size();i++) {
for (int i = 0; i < compte.length; i++) {

erreur 2;

if (compte.get(i).equals(numero_new_compte)) {
if (compte[i].equals(numero_new_compte)) {

Ceci pour la syntaxe, mais n'ayant pas la description des éléments de ton tableau, il y a peut-être autre chose à faire avant de tester si le compte existe...

Cordialement,

Dan
0
nickie
 
c'est un arraylist que j'ai :
public ArrayList<compte> Compte;
0
nickie
 
je vous mets ma class banque
class banque{
  private String NomBanque;
  public ArrayList<compte> Compte;
  private int numero_new_compte;
  
	public banque(String nom_banque){
		Compte = new ArrayList<compte>();
		this.NomBanque= nom_banque;
		this.numero_new_compte=1;
	}

	public void creer_compte_anonyme(String nom, String prenom,double decouvert_autoriser, double apport_initial){
		this.Compte.add(new compte_anonyme(numero_new_compte, decouvert_autoriser, apport_initial, nom, prenom));
		numero_new_compte++;
	}

	public void creer_compte_physique(String nom, String prenom,double decouvert_autoriser, double apport_initial){
		this.Compte.add(new compte_physique(numero_new_compte,decouvert_autoriser, apport_initial, nom, prenom));
		numero_new_compte++;
	}

	public void creer_compte_entreprise(String nom_entreprise,double decouvert_autoriser, double apport_initial){
		this.Compte.add(new compte_entreprise(numero_new_compte, decouvert_autoriser, apport_initial, nom_entreprise));
		numero_new_compte++;
	}

	public void recherche_compte(int numero_new_compte){
	      for (int i=0;i<compte.size();i++) {
		  if (compte.get(i).equals(numero_new_compte)) {
			System.out.println("compte trouvé");
		  }
	      }
	}

	public void affiche_all(){
		Iterator b1 = Compte.iterator();
		while (b1.hasNext()){
			((compte) b1.next()).affiche();
		}
	}
}
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nickie
 
bonsoir
jai un autre souci dans ma methode ma condition if n'ai jamais valide
public void recherche_compte(int numero_new_compte){
	      for (int i=0;i<Compte.size();i++) {
		 
		  if (Compte.get(i).equals(numero_new_compte)) {
			Compte.get(i).affiche();
		  }
	      }
	}


enfaite je fais une recherche par numéro de compte et j'affiche mais je ne rentre pas dans le if.
mon Compte.get(i) renvoie une adresse du tableau et je compare ça equals(numero_new_compte) qui et un int donc c'est peut être normal mais je ne vois pas d'autre idée si quelqu'un avait une autre solution.


dans mon main j'ai banque ban1 = new banque("BNP");
public class mabanque {
	public static void main(String[] args){
		banque ban1 = new banque("XXX");
		ban1.creer_compte_anonyme("xxx", "xxx",200, 10000); //numero de compte 1
		ban1.creer_compte_physique("xxx", "xxx",500, 10000); //numero de compte 2
		ban1.creer_compte_entreprise("xxx",0, 50000); //numero de compte 3
		ban1.recherche_compte(1);
		//ban1.affiche_all();
	}
}


merci
0
mype Messages postés 2435 Date d'inscription   Statut Membre Dernière intervention   437
 
je pense que dans ta classe compte tu dois avoir un attribut pour le numero du compte...
donc apres tu peux faire
 if (Compte.get(i).attribut_num_compte == numero_new_compte)
0