• [^] # Re: Typage

    Posté par . En réponse au message débutant java : opérations de base sur les listes. Évalué à 0.

    Re-salut.

    import java.util.ArrayList;
    public class ClassA {
     private class ClassB<I, S> extends ArrayList<Object> {
     public void myAdd(I i,S s) throws Exception {
     if(i==null && s==null) 
     throw new Exception("Je veux un paramètre !");
     if(i!=null && s!=null) 
     throw new Exception("Mais juste un seul !");
     Object o =null;
     if(i!=null)
     o=i;
     else
     o=s;
     super.add(o);
     }
     public Object get(int i) {
     return super.get(i); 
     }
     }
     public static void main(String[] args) throws Exception {
     ClassA a = new ClassA();
     a.doThings();
     }
     public void doThings() throws Exception {
     ClassB<Integer, String> maListeDeBidules = new ClassB<>(); 
     maListeDeBidules.myAdd(1, null); // ok
     maListeDeBidules.myAdd(null, "deux"); // ok
     System.out.println("mon bidule 1: "+maListeDeBidules.get(0));
     System.out.println("mon bidule 2: "+maListeDeBidules.get(1));
     maListeDeBidules.myAdd(3, "quatre"); // pas ok
     }
    }

    Un avis ?

    Matricule 23415