Maison >Java >javaDidacticiel >Quand l'opérateur ternaire n'est-il pas le bon outil pour le travail en Java ?

Quand l'opérateur ternaire n'est-il pas le bon outil pour le travail en Java ?

DDD
DDDoriginal
2024-11-08 02:24:02529parcourir

When is the Ternary Operator Not the Right Tool for the Job in Java?

Alternatives aux opérateurs ternaires en Java

Votre question cherche à transformer le segment de code suivant en un opérateur ternaire :

if (string != null) {
    callFunction(parameters);
} else {
    // Intentionally left blank
}

Bases de l'opérateur ternaire

L'opérateur ternaire Java attribue une valeur à une variable selon qu'une condition est vraie ou fausse. Sa syntaxe est :

return_value = (true-false condition) ? (if true expression) : (if false expression);

Limitations dans ce cas

Cependant, l'opérateur ternaire ne convient pas à votre code car la clause false est vide. L'opérateur ternaire nécessite à la fois des expressions vraies et fausses.

Suggestions alternatives

  • Valeur de retour non vide dans callFunction(... ):
    Si callFunction(...) renvoie une valeur non vide, vous pouvez utiliser l'opérateur ternaire comme suit :

    return_value = (string != null) ? callFunction(...) : null;
  • Void Valeur de retour dans callFunction(...):
    Si callFunction(...) ne renvoie pas de valeur, l'opérateur ternaire n'est pas applicable. Vous pourriez envisager l'alternative suivante :

    if (string != null) {
        callFunction(...);
    }

    ou la version one-liner :

    string != null && callFunction(...);

Objectif des opérateurs ternaires

Il convient de noter que les opérateurs ternaires doivent principalement être utilisés pour des affectations alternatives concises. Votre code ne semble pas répondre à cet objectif et bénéficierait davantage des alternatives suggérées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn