【发布时间】:2019-03-28 15:46:54
【问题描述】:
假设有一个切片,其中包含整数。我们已经声明了一个包含整数值的变量,然后我必须在不使用 for 循环的情况下从该切片中找到值。
使用 for 循环我喜欢这样:-
package main
import (
"fmt"
)
func main() {
value := 10
var interf []interface{}
for i := 1; i <= value; i++{
interf = append(interf, i)
}
fmt.Println(interf)
for _,v := range interf{
if value == v{
fmt.Println("Matched")
}
}
}
我们如何在不使用 for 循环的情况下做同样的事情
【问题讨论】:
-
那里,golang 对此没有办法。你可以阅读更多here
-
@MaxianNicu play.golang.org/p/PGx3gRSgjMx 这是一个游乐场,请告诉我如何在我的代码中实现它
-
无论如何,for 循环是不可避免的。您至少需要查看切片中的值一次以判断它是否存在,这需要一个循环或复杂度类似的东西(即 O(n) )。如果您认为它看起来很重复或无聊,您可以将其抽象为一个函数。