Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Talend Discussion :

Polymophisme Talend 7.1.1


Sujet :

Talend

  1. #1
    Membre habitué
    Polymophisme Talend 7.1.1
    Bonjour,

    j'aurai aimé savoir si Talend supportait la création de méthode polymorphe.

    Du style :
    Code Java :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    public class Routine_Test{
            public static ArrayList<String> myFunction(ArrayList<String> columnA, ArrayList<String> columnB){
     
    		ArrayList<String> ColumnA= columnA;
    		ArrayList<String> ColumnB= columnB;
     
    		ColumnB.removeAll(ColumnA);
     
    		return ColumnB;
    	}
            public static ArrayList<String> myFunction(ArrayList<String> columnA, ArrayList<String> columnB,  ArrayList<String> columnC){
     
    		ArrayList<String> ColumnA = columnA;
    		ArrayList<String> ColumnB = columnB;
                    ArrayList<String> ColumnC = columnC;
     
    		ColumnC.removeAll(ColumnA);
                    ColumnC.removeAll(ColumnA);
     
    		return ColumnC;
    	}
    }


    Merci.

  2. #2
    Membre habitué
    Post inutile...
    La réponse est oui, puisque j'utilise la version 1.8 de Java ...

    Il est tard !

  3. #3
    Membre expérimenté
    Ferme ton post. :p

    ____

    Sinon je ne peux pas m’empêcher à faire la revue de ton code

    Code java :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    public class Routine_Test{
            public static ArrayList<String> myFunction(ArrayList<String> columnA, ArrayList<String> columnB){
     
    		ArrayList<String> ColumnA= columnA;
    		ArrayList<String> ColumnB= columnB;
     
    		ColumnB.removeAll(ColumnA);
     
    		return ColumnB;
    	}
            public static ArrayList<String> myFunction(ArrayList<String> columnA, ArrayList<String> columnB,  ArrayList<String> columnC){
     
    		ArrayList<String> ColumnA = columnA;
    		ArrayList<String> ColumnB = columnB;
                    ArrayList<String> ColumnC = columnC;
     
    		ColumnC.removeAll(ColumnA);
     
        // ColumnC.removeAll(ColumnA); 
     
    		return ColumnC;
    	}
    }
    Pourquoi pas simplement ?
    ça sert a rien de copier un paramètre dans une variable locale

    Code java :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    public class Routine_Test{
            public static ArrayList<String> myFunction(ArrayList<String> columnA, ArrayList<String> columnB){
     
    		columnB.removeAll(columnA);
     
    		return ColumnB;
    	}
            public static ArrayList<String> myFunction(ArrayList<String> columnA, ArrayList<String> columnB,  ArrayList<String> columnC){
     
    		columnC.removeAll(columnA);
                    // je commente car ça sert à rien mais tu as voulu mettre columnB
                    //columnC.removeAll(columnA);
     
    		return ColumnC;
    	}
    }
    Pensez à marquer vos tickets comme résolus.
    Pensez aussi aux pour les réponses pertinantes

    Quand une discution est résolue depuis un moment pour revenir dessus, il est mieux d'en crée une nouvelle avec un lien vers l'autre car :
    • Elle sera en haut du forum, elle sera donc plus visible
    • Une discussion résolue, on ne passe pas dessus pour aider, on passe dessus si on a le même problème
    • Tu demandes surement à tes clients de faire le même

  4. #4
    Membre habitué
    Une vieille habitude des cours d'université à perdre