前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >厚土Go学习笔记 | 09. 类型转换 与 类型推导

厚土Go学习笔记 | 09. 类型转换 与 类型推导

作者头像
李海彬
发布2018-03-28 11:32:02
6690
发布2018-03-28 11:32:02
举报
文章被收录于专栏:Golang语言社区Golang语言社区

在Go语言中,不同类型的项之间赋值时,需要显式转换。

表达式 T(v) 将值 v 转换为类型 T 。

代码语言:javascript
复制
var i int = 42
var f float64 = float64(i)
var u uint = uint(f)

或者更简单的写法

代码语言:javascript
复制
i := 42
f := float64(i)
u := uint(f)

当定义了一个变量,却没有显式指出其类型时,变量的类型由等号右侧的值(第一次赋值)推导出变量的类型。

例如

代码语言:javascript
复制
i := 42                // int
f := 3.142            //float64
g := 0.867 + 0.5i    //complex128

运行下面代码,可以输出类型

代码语言:javascript
复制
package main

import (
    "fmt"
)

func main() {
    i := 42
    f := 3.142
    g := 0.867 + 0.5i
    fmt.Printf("i is of type %T\n", i)
    fmt.Printf("f is of type %T\n", f)
    fmt.Printf("g is of type %T\n", g)
}

运行结果

代码语言:javascript
复制
i is of type int
f is of type float64
g is of type complex128

你可以用这个方法,测试一下各种类型的数据,看看都是什么结果。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-11-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Golang语言社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档