récursive Je suis en train de mettre en œuvre une méthode récursive à Scala et je suis en cours d'exécution sur les questions de mutabilité (je suis tout nouveau à Scala):Modifier arguments Scala dans la méthode
def findMembersRecursive(path : String, members : Set[String]) : Unit = {
val candidates : Set[String] = candidateService.getProspectiveCandidates(path)
candidates.foreach { candidate =>
if(candidate.endsWith("hello")) {
members ++= candidate
} else {
findMembersRecursive(candidate, members)
}
}
}
L'idée est que nous exécuter récursivement, cet ensemble de chaînes (members
) se développe.
Ici, il ne me laisse pas ajouter candidate
à members
parce que members
semble être immuable. Des idées sur la façon dont je pourrais refactoriser le code pour fonctionner récursivement?
Pourquoi faites-vous pas des membres de retour findMembersRecursive? Pourquoi voulez-vous garder les «membres» comme argument? – Nyavro