Rechercher : dans
Par :

Java probleme arraylist size()

Dernière réponse le 8 mar 2009 à 18:15:36 nickie, le 8 mar 2009 à 15:59:52 
 Signaler ce message aux modérateurs

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

Configuration: Linux
Firefox 3.0.7

Meilleures réponses pour « java probleme arraylist size() » dans :
[Firefox] plugin Java Jre de Sun VoirA) Les différentes variantes Java chez Sun B) Installation sous Mandriva Limited Edition 2005 ETAPE 1 ETAPE 2: Création du lien symbolique C) Installation sous debian lenny D) Installation sous ubuntu hardy heron A) Les différentes...
Installer Java sous Ubuntu VoirPar défaut, Firefox n'est pas fourni avec Java. Voici comment procéder pour l'installer: Ouvrez un terminal (Menu Applications > Accessoires > Terminal) et tapez: sudo aptitude install sun-java6-jre sun-java6-plugin ou sudo aptitude install ...
[Logiciel libre] Installation firefox 2.0+java+flash VoirInstallation firefox 2.0+java+flash en ligne de commande A. INTRODUCTION B. INSTALLATION FIREFOX 1. Création d'environnement 2. Téléchargement et vérification de la signature 3. Installation de Firefox 4. Démarrage de l'application C....
Télécharger Java Runtime Environment VoirJava Runtime Environment (JRE) installe la machine virtuelle Java, permettant de jouer en ligne, de discuter avec des personnes dans le monde entier, de calculer les intérêts de votre prêt immobilier ou de visualiser des images en 3D. Ces...
Java - Les types de données VoirLes primitives Java est un langage orienté objet, c'est-à-dire que les éléments manipulés sont des classes, ou plus exactement des objets, c'est-à-dire des instances de classes. Toutefois ces objets contiennent des données possèdant un type (et...
Java - Premier programme VoirPremière application avec Java La première chose à faire est de créer un simple fichier texte (sans mise en forme) et de taper les quelques lignes suivantes : // Votre premiere application en Java class FirstApp { public static void main...
J2EE - Java 2 Enterprise Edition VoirIntroduction au Java Framework Le «Java Framework» (Java 2 Platform) est composé de trois éditions, destinées à des usages différents : J2ME : Java 2 Micro Edition est prévu pour le développement d'applications embarquées, notamment sur des...

1

mype, le 8 mar 2009 à 16:19:38
  • +1

Mets ta classe en entier pour qu'on voit mieux le probleme...

Répondre à mype

2

danimo, le 8 mar 2009 à 16:28:19

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

Répondre à danimo

4

nickie, le 8 mar 2009 à 16:35:26

C'est un arraylist que j'ai :
public ArrayList<compte> Compte;

Répondre à nickie

3

nickie, le 8 mar 2009 à 16:33:30

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();
		}
	}
}

Répondre à nickie

5

mype, le 8 mar 2009 à 16:36:02
  • +1

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)) {

Répondre à mype

6

nickie, le 8 mar 2009 à 16:43:08

Raa merci j'ai galèré pendant une heure la, faire lire son code par un autre est très efficace
merci

Répondre à nickie

7

danimo, le 8 mar 2009 à 16:45:17

Salut,

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

Dan

Répondre à danimo

8

nickie, le 8 mar 2009 à 17:39:46

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

Répondre à nickie

9

 mype, le 8 mar 2009 à 18:15:36

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)

Répondre à mype
Collection CommentÇaMarche.net