[Java]Appel fonction, paramètre String[]

Résolu/Fermé
der_igel Messages postés 50 Date d'inscription mercredi 13 août 2008 Statut Membre Dernière intervention 9 octobre 2009 - 25 août 2008 à 13:20
kevin_mba70 Messages postés 19 Date d'inscription lundi 22 juillet 2013 Statut Membre Dernière intervention 16 janvier 2015 - 31 juil. 2013 à 17:20
Bonjour,

Lors de l'appel d'une fonction, le paramètre est de type String[].
fonction(String []){
}

Je voudrais donc appeler cette fonction, sans définir par avance un objet de type String[]. J'ai essayé différentes façons :
fonction("partie2" "partie2");
fonction("partie2", "partie2");

mais ça ne marche pas. Si quelqu'un a une idée, merci d'avance !
A voir également:

3 réponses

der_igel Messages postés 50 Date d'inscription mercredi 13 août 2008 Statut Membre Dernière intervention 9 octobre 2009
25 août 2008 à 13:43
Je sais, c'est ce que j'aurai fait en temps normal. (Je ne suis pas très débrouillarde, mais je ne suis pas non plus totalement débutante, et j'ai déjà suivi des cours de java...) Mon problème, c'est "sans définir un objet String[] par avance".

En fait, mon problème est un peu plus complexe. Je travaille avec le framework Tapestry, qui utilise des annotations particulières. Et je dois inclure une librairie javascript (qui sera utilisée dans la partie html) : c'est déclaré avant la classe, avec les imports. Ce qui donne normalement :

Fichier MaClasse.java

package monPackage;

import unImport;
import unAutreImport;

@IncludeJavaScriptLibrary("./maLibrairie.js")

public class MaClasse {
}


L'annotation contient les chemins d'accès aux librairies, sous la forme String[]. Comme cette annotation est avant la classe, je ne vois pas vraiment où définir mon objet String[] pour inclure plusieurs librairies. Je peux me tromper, mais il me semble bien que ce n'est pas possible de cette façon, d'où ma question.
0
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
25 août 2008 à 13:49
Ah d'accord, dans ce contexte là essaie ceci alors :
@IncludeJavaScriptLibrary({"./maLibrairie.js","./maLibrairie2.js","..."})

0
der_igel Messages postés 50 Date d'inscription mercredi 13 août 2008 Statut Membre Dernière intervention 9 octobre 2009 > kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013
25 août 2008 à 13:57
Merci beaucoup, il me manquait les crochets. Maintenant il n'y a plus d'erreur dans le fichier java.
-1
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
25 août 2008 à 13:27
Bonjour,

Je te conseille de suivre des cours de Java avant d'essayer de faire quoi que ce soit.
Si tu donne un seul paramètre à ta fonction (qui est un tableau) et que lors de l'utilisation tu lui fournit deux paramètres (deux chaines de caractère) c'est normal que ta fonction ne soit pas reconnue.

Il faut que tu donne un tableau de String lors de l'utilisation de la fonction, soit :
String[] mesParametres = new String[2];
mesParamètres[0] = "param1";
mesParametres[1] = "param2";

fonction(mesParametres);

-1
kevin_mba70 Messages postés 19 Date d'inscription lundi 22 juillet 2013 Statut Membre Dernière intervention 16 janvier 2015
31 juil. 2013 à 17:20
A moins que ne comprenne ta préoccupation, si ta fonction a un seul paramètre de type tableau tel que je vois là, alors tu ne peux appeler ta fonction avec un seul paramètre de type tableau que tu aurai renseigné.

J'espère que j'ai répondu à ta préoccupation.
-1