go - 如何检查空 slice ?

标签 go slice

如果没有值,我正在调用一个返回空数组的函数。

当我这样做时它不起作用:

if r == [] {
    fmt.Println("No return value")            
}

我正在使用的解决方法是:

var a [0]int
if r == a {
    fmt.Println("No return value")            
}

但是仅仅为了检查返回值而声明一个变量似乎是不对的。有什么更好的方法来做到这一点?

最佳答案

len()返回 slice 或数组中的元素数。

假设 whatever() 是您调用的函数,您可以执行以下操作:

r := whatever()
if len(r) > 0 {
  // do what you want
}

或者如果您不需要这些元素

if len(whatever()) > 0 {
  // do what you want
}

关于go - 如何检查空 slice ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38144050/

相关文章:

arrays - 数组和 slice 数据类型

http - golang http 文件太多

python - 更新 Tensorflow 中的变量切片

go - 这是一个 block 论证吗?

go - 从 Golang 中的结构更新值

go - 在 golang 中有 nil slice 和 empty slice 有什么意义?

arrays - 在数组 golang 中连接整数 - GoLang

python - 如何有效地将 Python 列表分成 20 个 block + 一个切片作为剩余部分?

video - 用ffmpeg剪辑视频

javascript - 从 JavaScript 调用函数