From ad8459af837283bed9c3952a434c85c3dd23d88c Mon Sep 17 00:00:00 2001 From: fantasticbin Date: Fri, 15 Nov 2024 20:05:34 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=AD=E4=BB=A3=E5=99=A8=E7=A4=BA=E4=BE=8B?= =?UTF-8?q?=E9=9B=86=E5=90=88=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- iterator/set.go | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/iterator/set.go b/iterator/set.go index 6f1ba9d..5f00fd8 100644 --- a/iterator/set.go +++ b/iterator/set.go @@ -88,11 +88,7 @@ func (s *OrderedSet[T]) All() iter.Seq[T] { func (s Set[T]) FilterMap(fn func(T) bool) iter.Seq[T] { return func(yield func(T) bool) { for v := range s.m { - if !fn(v) { - continue - } - - if !yield(v) { + if fn(v) && !yield(v) { return } } @@ -104,11 +100,7 @@ func (s *OrderedSet[T]) FilterMap(fn func(T) bool) iter.Seq[T] { return func(yield func(T) bool) { // 迭代有序切片 for v := range slices.Values(s.ordered) { - if !fn(v) { - continue - } - - if !yield(v) { + if fn(v) && !yield(v) { return } }