为了账号安全,请及时绑定邮箱和手机立即绑定

Golang错误:无法使用(类型[5]int)作为中位数参数中的int类型

Golang错误:无法使用(类型[5]int)作为中位数参数中的int类型

Go
墨色风雨 2023-07-31 16:07:20
我编写了一个函数来查找奇数长度数组的中位数 -package mainimport (    "fmt"    "sort")func median(arr ...int)(int){    sort.Ints(arr)    return arr[len(arr)/2]}func main() {    arr := []int{1,2,3}    med := median(arr)    fmt.Println(med)}但在编译时,我收到一条错误消息 -Cannot use arr (type [5]int) as type int in argument to median到底是什么错误?我该如何解决?PS - 我不想修改中值函数。但是我的类型有什么问题arr导致了这个问题呢?
查看完整描述

1 回答

?
LEATH

TA贡献1936条经验 获得超6个赞

您说的median是一个可变参数函数,但您arr作为第一个参数而不是所有参数传递。您只需通知 go 用作arr所有可变参数

med := median(arr...)

为我工作。


查看完整回答
反对 回复 2023-07-31
  • 1 回答
  • 0 关注
  • 70 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信