J'ai le scénario ci-dessous.Déclarez une variable finale basée sur une condition et utilisez-la en lambda dans Java
Je voudrais utiliser une variable à l'intérieur de l'expression lambda. Mais cette variable aura une valeur ponctuelle (finale) basée sur une condition. Après cela, je commence l'itération sur une liste en utilisant l'expression forEach + lambda. Maintenant, je dois utiliser ce champ constraintsAmount à l'intérieur de cette itération.
Mais il est dit que "constraintsAmount n'a peut-être pas été initialisé".
Comment puis-je contourner celui-ci.
Note: 1) Je ne veux pas déclarer cette variable comme une variable d'instance et je ne veux certainement pas déclarer et initialiser cette variable dans l'itération. 2) Puisqu'il s'agit d'une finale, je ne peux pas l'initialiser et ensuite la réutiliser dans la vérification if. Donc voulu vérifier quel est le travail autour.
Question - que se passe-t-il lorsque 'contrainte 'n'est pas présent? –
@BoristheSpider Oui je comprends pourquoi il donne l'erreur, puisque si la contrainte n'est pas présente la variable ne sera pas initialisée. Alors, quel est le travail autour de résoudre cela. – tushR
@tushR nous ne pouvons pas vous le dire. Vous devez décider de ce que vous voulez arriver quand 'contrainte 'n'est pas présent. Vous ne nous l'avez pas dit. –