博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
go 入门学习笔记之 变量/常量/基本类型 (五)
阅读量:7022 次
发布时间:2019-06-28

本文共 1229 字,大约阅读时间需要 4 分钟。

  hot3.png

变量

// 定义多个变量var i, j, k bool// 定义同时初始化var x, y int = 1, 2//类型自动推导var a, b = 10, "golang"k := 3

常量

//常量用 const 定义, 不能用 :=//常量的值需要在编译时确定, 类似 C 语言中的 #defineconst Hello = "你好"const World = "世界"

基本类型

package mainimport (	"fmt"	"math/cmplx")var (	ToBe bool = false	MaxInt uint64 = (1<<64 - 1)	z  complex128 = cmplx.Sqrt(-5+12i))func main() {	const f = "%T(%v)\n"	fmt.Printf(f, ToBe, ToBe)	fmt.Printf(f, MaxInt, MaxInt)	fmt.Printf(f, z, z)}

输出:

C:\Go\bin\go.exe run C:\Go\src\flag\s1.gobool(false)uint64(18446744073709551615)complex128((2+3i))

基本数据类型:

boolstringint  :  int8  int16  int32  int64uint :  uint8  uint16  uint32 uintptrbyte // alias  for uint8rune // alias for int32     // represents a Unicode code pointfloat32  float64complex64  complex128

零值

对于  定义但未初始化的变量,被赋予 “零值”Zero Value零值的定义: 对数值类型, 就是 0 bool 类型,是 false字符串类型, 空字符串 ""

类型转换

类型转换表达式  T(v)i := 42f := float64(i)u := uint(f)在 GO 语言, 类型需要显示的进行转换"explicit is better than implicit"

测试:

package mainimport (	"fmt")func main() {	const f = "%T(%v)\n"		i := 42	fi := float64(i)	uf := uint(fi)		fmt.Printf(f, i, i)	fmt.Printf(f, fi, fi)	fmt.Printf(f, uf, uf)}

输出:

C:\Go\bin\go.exe run C:\Go\src\flag\s1.goint(42)float64(42)uint(42)

 

转载于:https://my.oschina.net/tsh/blog/1548082

你可能感兴趣的文章
java较全的面试题
查看>>
day3
查看>>
软件程序编码
查看>>
感觉好累
查看>>
使用ant制作hadoop1.1.2的eclipse插件(转载)
查看>>
Css的transform和transition
查看>>
POJ1386Play on Words(欧拉回路)
查看>>
configparser 文件的生成和读写
查看>>
20个PHP程序性能优化的方法
查看>>
关于游戏平衡性工作内容——王者荣耀英雄伤害附录
查看>>
47种常见的浏览器兼容性问题大汇总
查看>>
数据结构与算法预热--线性表是什么?
查看>>
Winform自定义控件实例
查看>>
Siebel NextRecord And DeleteRecord In Loops Skips Record
查看>>
batch normalization在测试时的问题
查看>>
Python时间和日期
查看>>
【BZOJ4298】[ONTAK2015]Bajtocja
查看>>
为什么C语言中int的表示范围是-32768~32767
查看>>
有关位运算的基础知识和应用
查看>>
框架dubbox的简单使用
查看>>