golang走起(三)list简单使用和interface{}
来源:互联网 发布:java记事本课程设计 编辑:程序博客网 时间:2024/06/06 01:57
golang走起(三)list简单使用和interface{}
代码如下:
package mainimport ( "container/list" "fmt")type Person struct { age int}func main() { l := list.New() for i := 0; i < 5; i++ { p := Person{age: i * 10} l.PushBack(p) } for i := 5; i < 10; i++ { l.PushBack(i) } i := 0 // 遍历 for v := l.Front(); v != nil; v = v.Next() { if i > 4 { c := v.Value.(int) fmt.Println("get c:", c) } else { p := v.Value.(Person) fmt.Println("Person.age:", p.age) } i++ }}
运行结果如下:
Person.age: 0Person.age: 10Person.age: 20Person.age: 30Person.age: 40get c: 5get c: 6get c: 7get c: 8get c: 9
这里介绍一下interface{}
list中的Element.Value interface{},这里使用反射,把Value反射成相应的类型,如:c := v.Value.(int)
大家习惯其理念就好
此处不能使用想C一样的强转,如 c := int(v.Value),会出现编译错误
0 0
- golang走起(三)list简单使用和interface{}
- golang走起(四)执行命令行
- golang 走起(六) 超时
- golang 走起(七) 多态
- golang 走起(八) 目录结构
- golang走起(一)对象与指针
- golang走起(二)对象与指针二
- golang 走起(五) Profile 的应用
- Golang-interface(三 接口类型)
- Golang-interface(一 基本使用)
- golang 走起(九) linux 下 go语言 vim设置
- Beego走起(二) 路由的简单设置
- golang: 详解interface和nil
- golang: 详解interface和nil
- golang: 详解interface和nil
- golang: 详解interface和nil
- golang interface
- golang interface
- 多线程--Executor框架
- 【记录用】码农之路所遇到的问题
- ZOJ-2969-Easy Task【5th浙江省赛】
- Log的使用、自定义Log工具类
- BZOJ-2326 数学作业 矩阵乘法快速幂+快速乘
- golang走起(三)list简单使用和interface{}
- install grub-customizer in ubuntu14.04
- android判断是否联网----无耻的截图别人的
- 程序出错后 程序员给测试人员的20条高频回复
- c/c++题目汇总一
- CDZSC_2016寒假个人赛(2)-L(模拟)
- 成功的背后!(给所有IT人)
- BZOJ 2588: Spoj 10628. Count on a tree|主席树
- ZOJ-2970-Faster, Higher, Stronger【5th浙江省赛】