Problème retour tableau ArrayList

Résolu/Fermé
Essoum Messages postés 3 Date d'inscription vendredi 1 mai 2015 Statut Membre Dernière intervention 4 mai 2015 - Modifié par KX le 1/05/2015 à 01:08
Essoum Messages postés 3 Date d'inscription vendredi 1 mai 2015 Statut Membre Dernière intervention 4 mai 2015 - 1 mai 2015 à 01:25
Bonjour,

Je commence la programmation, je rencontre un problème avec une méthode. Eclipse m'indique que le type retour est absent pour la méthode. Je voudrais pourvoir avoir accès à mon tableau Vil mais je ne comprends pas comment effectuer mon retour. Si vous pouviez m'éclairer ça serait super sympa.
Voici le code :

import java.util.StringTokenizer;
import java.util.ArrayList;

public class Importation {
 
 public Charger(String listVille){

 TextFile tf = new TextFile(listVille);
 ArrayList <String> Vil = new ArrayList<String>();

  for(int i=0 ; i < tf.getSize(); i++ ){
 StringTokenizer st = new StringTokenizer(tf.getLine(i) , ";");

   while(st.hasMoreTokens()){
    Vil.add(st.nextToken());
    }
   return Vil;
   }
  }
 
 public static void main(String[] args){
  Importation imp = new Importation();
  imp.Charger("ville.dat");
  System.out.println(Vil.get(i));
 }
}
A voir également:

1 réponse

KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
1 mai 2015 à 01:15
Bonjour,

Comme tu peux le voir sur la méthode main, la description d'une méthode c'est, dans l'ordre :

1) des mots clés (public, static) → optionnels
2) un type de retour (void) → obligatoire
3) le nom de la méthode (main) → obligatoire
4) les arguments (String[]args) → optionnels
5) les exceptions (tu n'en as pas ici) → optionnels

Toi tu as
public Charger(String listVille){

C'est à dire 1 (public), 3 (Charger), 4 (String listeVille)
Eclipse te dit qu'il manque 2 : le type de retour obligatoire

Ici comme tu fait un
return Vil;
il faut que le type de retour soit de ce type, c'est à dire un ArrayList<String>

Remarque : normalement les noms de méthodes commencent par une lettre minuscule, de même que les noms de variables.

public ArrayList<String> charger(String listVille) {
    //...
    ArrayList<String> vil //...
    // ...
    return vil;
}
0
Essoum Messages postés 3 Date d'inscription vendredi 1 mai 2015 Statut Membre Dernière intervention 4 mai 2015
1 mai 2015 à 01:25
Merci de votre explication, j'avais jamais réussi a faire un retour correct. Je comprends mieux où était mon erreur, la même à chaque fois d'ailleurs.
Merci encore bonne soirée !
0