J'ai deux listes:
val list1 = List("Word1","Word2","Word2","Word3","Word1")
val list2 = List("Word1","Word4")
Je veux supprimer toutes les occurrences des éléments list2
De list1
, C'est-à-dire que je veux
List("Word2","Word2","Word3") <= list1 *minus* list2
J'ai fait list1 diff list2
Qui me donne List("Word2","Word2","Word3","Word1")
qui ne supprime que la première occurrence de "Word1".
Je ne peux pas le convertir en ensembles car j'ai besoin de connaissances sur les doublons (voir "Word2" ci-dessus). Que faire?
Vous pouvez
val unwanted = list2.toSet
list1.filterNot(unwanted)
pour supprimer tous les éléments de list2
. (Vous n'avez pas besoin de connaître les doublons dans list2
.)
Vous pouvez essayer ceci:
val list1 = List("Word1","Word2","Word2","Word3","Word1")
val list2 = List("Word1","Word4")
println(list1.filterNot(list2.contains(_)))