Re: [GENERIC] problème que je n'arrive pa s à résoudre . P... de Generic :)

Régis <[email protected]> Mon, 24 Jan 2011 14:40:33 +0100
Newsgroups gmane.comp.java.french.general
Message-ID <[email protected]>
 Oui la fonction aurait dû être appelée:

 removeAt(int index)

 Maintenant en connaissant les règles on sait quelle fonction va être 
 appelée, mais c'est vrai qu'avec Integer et l'auto-boxing ça devient 
 obscur...

 C'est ints.remove( (int) 1 ) qui est choisi parce que l'auto-boxing 
 n'est appliqué que s'il y a pas de signature compatible.



 On Mon, 24 Jan 2011 14:34:57 +0100, Dominique Gallot 
 <[email protected]> wrote:
> Surtout pour une List  :)
>  
> List ints = NEW ArrayList();
> ints.add( 2 );
> ints.add( 1 );
>  ints.remove( 1 );
>
> ints = { 1 } ou { 2 } ?
>
> Dominique
>
> 2011/1/24 Rémi Forax
>
> On 01/24/2011 02:16 PM, Régis wrote:
>  Je ne sais pas ce qui te chagrine, mais tout est correct.
>
>  Autre chose, je n'ai jamais compris pq les prototypes des functions
> du collection framework, permettait ca :
>
> List strings = new ArrayList();
>
> Compatible parce que ArrayList est un sous type de List
>
>  strings.add( "my string" );
>
> R.A.S.
>
>   strings.remove( 1 );
>
> List fournit remove(int index) et remove(T object).
>
> qui est un cas typique de mauvaise utilisation de la surcharge.
>
> Qui sait pourquoi ?
>
> Dominique
>
> Rémi
>
>
>
> Links:
> ------
> [1] mailto:[email protected]