[JAVA] Point 44: Favoriser l'utilisation d'interfaces fonctionnelles standards
44. Utiliser l'interface fonctionnelle standard
- En utilisant les standards, vous pouvez augmenter la facilité d'utilisation et bénéficier des différentes méthodes déjà intégrées.
- Il y a 43 interfaces fonctionnelles incluses dans java.util.function.
- Le noyau est ```UnaryOperator
,
BinaryOperator
, Predicate <T>
,
Function ,
Six de Consommateur <T> '',
Fournisseur ''. (6)
- Chacun des six ci-dessus a une interface fonctionnelle pour gérer les types primitifs de
int
, `long```, et`
double```. (18)
- Il existe 6 SrcToResultFunctions (telles que
LongToIntFunction '') pour les fonctions. Il existe trois SrcToObjFunctions (telles que
DoubleToObjFunction ''). (9)
- Il y en a neuf qui acceptent deux arguments. (9)
- Il y a quelque chose qui s'appelle BooleanSupplier. (1)
- N'utilisez pas d'objets qui ont des types primitifs encadrés dans une interface fonctionnelle qui ne prend pas en charge les types primitifs. Les performances se détériorent.
- Vous devez rédiger vous-même une interface fonctionnelle dans les cas suivants.
- Lorsque vous avez besoin de quelque chose qui n'est pas fourni en standard, comme une interface fonctionnelle qui prend trois arguments.
- S'il existe des fonctionnalités telles que le fait d'être couramment utilisé et de bénéficier de la description, d'avoir un contrat fortement pertinent (** pas sûr **), et de bénéficier de la méthode par défaut. (``
Comparator <T>
`ʻest donné à titre d'exemple)
- Lors de l'écriture d'une interface fonctionnelle, veillez à ajouter @FunctionalInterface. Si vous avez cela, cela provoquera une erreur de compilation si vous l'écrivez de manière incorrecte.
- Les méthodes qui prennent une interface fonctionnelle comme argument ne doivent pas être écrasées. (Item52)