Je suppose qu'il y a un autre moyen plus élégant d'écrire ce code: TOUT IDEES? P> P>
4 Réponses :
Ceci est une mauvaise utilisation de en option code>, utilisez simplement une comparaison normale et l'opérateur
|| code> (ou):
return
request.getHeader(EspaiDocConstants.Headers.GICAR_HEADER) != null ||
request.getHeader(EspaiDocConstants.Headers.HTTP_GICAR_HEADER) != null;
Il n'y a pas besoin de en option code> du tout: il suffit d'utiliser un ancien chèque NULL uni.
return request.getHeader(EspaiDocConstants.Headers.GICAR_HEADER) != null
|| request.getHeader(EspaiDocConstants.Headers.HTTP_GICAR_HEADER) != null;
Il suffit de le garder à l'ancienne: Si vous voulez absolument utiliser une fonctionnalité de fantaisie Java8, vous pouvez utiliser flux code>: p>
return Stream.of(
request.getHeader(EspaiDocConstants.Headers.GICAR_HEADER),
request.getHeader(EspaiDocConstants.Headers.HTTP_GICAR_HEADER)
).anyMatch(Objects::nonNull);
Comme les personnes indiquées déjà, sa manière inutile - et pas vraiment agréable. Mais si vous vouliez vraiment vraiment faire cette vérification sur les options, vous pouvez le faire comme ça.
Cela donnera un résultat différent de celui du code de l'OP. Vous vérifiez actuellement que au moins une des constantes i> sont présentes. Mais pas que les en-têtes de la demande code> sont présents
@Lino Oops, je pensais avoir copié toute la demande - puis encore une fois, cela ne devrait pas être utilisé de toute façon: v