返回顶部

收藏

go语言的list

更多
package main

import (
    "fmt"
    "strconv"
)

type Element interface{}
type List []Element

type Person struct {
    name string
    age  int
}

//打印
func (p Person) String() string {   
    return "(name: " + p.name + " - age: " + strconv.Itoa(p.age) + " years)"
}

func main() {
    list := make(List, 3)
    list[0] = 1       //an int
    list[1] = "Hello" //a string
    list[2] = Person{"Dennis", 70}

    for index, element := range list {
        switch value := element.(type) {
        case int:
            fmt.Printf("list[%d] is an int and its value is %d\\n", index, value)
        case string:
            fmt.Printf("list[%d] is a string and its value is %s\\n", index, value)
        case Person:
            fmt.Printf("list[%d] is a Person and its value is %s\\n", index, value)
        default:
            fmt.Println("list[%d] is of a different type", index)
        }
    }
}
//该片段来自于http://outofmemory.cn

标签:go,基础

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. 无闻 发表 2014-01-16 07:00:00 《Go编程基础》视频教程
  2. 无闻 发表 2014-01-29 17:53:00 《Go Web基础》视频教程
  3. 博主 发表 2014-04-21 07:00:00 深入Go语言网络库的基础实现
  4. 无闻 发表 2014-01-16 07:00:00 《Go编程基础》视频教程
  5. 无闻 发表 2014-01-29 17:53:00 《Go Web基础》视频教程
  6. wantfee 发表 2013-01-02 02:01:41 33个以圆形为基础的logo设计欣赏
  7. 谭砚耘 发表 2012-03-20 01:52:46 WPO基础:再说瀑布图
  8. 炫意HTML5 发表 2013-04-11 14:03:27 15种基础的可以直接使用的CSS3样式
  9. dccmx 发表 2012-02-27 03:03:50 Go构建工具集
  10. 神仙 发表 2012-08-02 07:49:04 再探 goroutine
  11. kingtent 发表 2013-06-26 14:06:40 UX基础:OmniGraffle新手指南
  12. scofield 发表 2013-05-08 09:14:54 Go 语言分布式编程实践

发表评论