19-03-2011, 10:03 PM
Oui sauf que là c'est implicite seulement si tu lui a spécifiquement demandé :
implicit def convertHashMap2HashMapImproved(hm: HashMap[String, Int]) = new HashMapImproved(hm)
Donc tu sais ce que tu demandes
De plus tu peux demander ce fonctionnement implicite dans le scope que tu veux.
Ça peut-être à l'import du fichier (si tu le mets dans un fichier externe) dans ta main class, dans un if, ou tu veux.
Et c'est une fonction très puissante cet implicite cast à la demande.
Je n'ai pas parlé de mon exemple en disant que c'était mon verbeux, mais en montrant pourquoi c'était plus "propre" et "élégant".
Je m'en moque aussi que ça soit verbeux
Et non tu ne peux pas faire array +++= array1 +++= array3
Et je ne vois pas ce qu'il y a de pas clair à faire :
array1 ++= array2
Tu vois bien que tu ajoutes deux tableaux, mais que ça n'est pas une addition banale vu que tu as ++=
Pour respecter un peu le système de Ruby j'aurais très bien pu faire une fonction genre :
array1 mergeWithSum! array2
Et je parle au niveau puissance en effet des possibilités offertes par le langage, vu qu'ici ça n'est qu'un exemple et j'en ai déjà donné plusieurs
Sinon je serais curieux moi aussi de voir ce que l'on peut faire dans les autres langage
implicit def convertHashMap2HashMapImproved(hm: HashMap[String, Int]) = new HashMapImproved(hm)
Donc tu sais ce que tu demandes
De plus tu peux demander ce fonctionnement implicite dans le scope que tu veux.
Ça peut-être à l'import du fichier (si tu le mets dans un fichier externe) dans ta main class, dans un if, ou tu veux.
Et c'est une fonction très puissante cet implicite cast à la demande.
Je n'ai pas parlé de mon exemple en disant que c'était mon verbeux, mais en montrant pourquoi c'était plus "propre" et "élégant".
Je m'en moque aussi que ça soit verbeux
Et non tu ne peux pas faire array +++= array1 +++= array3
Et je ne vois pas ce qu'il y a de pas clair à faire :
array1 ++= array2
Tu vois bien que tu ajoutes deux tableaux, mais que ça n'est pas une addition banale vu que tu as ++=
Pour respecter un peu le système de Ruby j'aurais très bien pu faire une fonction genre :
array1 mergeWithSum! array2
Et je parle au niveau puissance en effet des possibilités offertes par le langage, vu qu'ici ça n'est qu'un exemple et j'en ai déjà donné plusieurs
Sinon je serais curieux moi aussi de voir ce que l'on peut faire dans les autres langage