网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

golang不定长传参

golang不定长传参,三个点... 可以很灵活的传入多个参数,给两个例子,一看就明白了

创新互联公司2013年成立,是专业互联网技术服务公司,拥有项目网站设计制作、成都网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元振安做网站,已为上家服务,为振安各地企业和个人服务,联系电话:13518219792

1、int类型不定长传参

package main

import "fmt"

func main() {
    fmt.Println(Sum(1, 4, 6, 7, 8, 9, 100, 200))
}

func Sum(numbers ...int) int {
    result := 0
    for _, n := range numbers {
        result += n
    }
    return result
}
 go run test1.go 
335

2、map类型不定长传参

package main

import "fmt"

func main() {
    fmt.Println(SumMap(map[string]string{"Italy": "Rome"}, map[string]string{"Japan": "Tokyo"}, map[string]string{"china": "beijing"}))
}

func SumMap(countryCapitalMaps ...map[string]string) map[string]string {
    var result map[string]string
    result = make(map[string]string)
    //注意:这里需要先把多个map的顺序取出,否则会报错
    //cannot use k (type int) as type string in map index
    //cannot use v (type map[string]string) as type string in assignment
    for i, num := range countryCapitalMaps {
        fmt.Println(i)
        fmt.Println(num)
        for k, v := range num {
            result[k] = v
        }
    }
    return result
}
go run test2.go  //这里会打印map的顺序号和值
0
map[Italy:Rome]
1
map[Japan:Tokyo]
2
map[china:beijing]
map[Italy:Rome Japan:Tokyo china:beijing]

分享题目:golang不定长传参
标题网址:http://bjjierui.cn/article/pgspcg.html

其他资讯