要判断数据祥哪类型,可以用Go的空接口:
成都创新互联专注于八宿网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供八宿营销型网站建设,八宿网站制作、八宿网页设计、八宿网站官网定制、小程序制作服务,打造八宿网络公司原创品牌,更为您提供八宿网站排名全网营销落地服务。
建一个函数t 设置参数i 的类型为空接口,空接口可以接受任何数据类型
func t(i interface{}) {
//函数t
有一个参数i
switch i.(type) {
//多选语句switch
case string:
//是字符时做的事情
case int:
//是整数时做的事情
}
return
}
i.(type)
只能在switch中使用
这函数没有返回值,你可以自己加入
还可以用反射:
package main
import (
"fmt"
"reflect"
)
func main() {
var x float64 = 3.4
fmt.Println("type:", reflect.TypeOf(x))
}
这样就可以得出答族变量x的类型信息,与上面不同的是:上面的方谨举码法要先知到它是几个类型中的一个,而这个方法可以对任意对象使用
Go中数值类型可细分为整数、浮点数、复数三春郑种,每扒腊颂种都具有不同的大小范围和正负支持。
整型分为两大类
Go提供了有符号和无符号的整数类型,同时提供四种大小不同的整数类型。
取值范围
等价类型
特殊整型
int 和 uint 分别对应特定CPU平台的字长(机器字大小),大小范围在 32bit 或 64bit 之间变化,实际开发中由于编译器和硬件不同而不同。
进制转换
转换函数
使用注意
字节长度
Golang提供了两种精度的浮点数分别为 float32 和 float64 ,它们的算术规范由IEEE754浮点数国际标准定义,IEEE754浮点数标准被现代CPU支持。
float32 类型的浮局雹点数可提供约6个十进制数的精度, float64 类型的浮点数可提供约15个十进制数的精度。通常会优先选择使用 float64 ,因为 float32 累计计算误差会比较容易扩散。
计算机中复数(complex)由两个浮点数表示,一个表示实部(real)一个表示虚部(imag)。
Go语言中复数的值由三部分组成 RE + IMi ,分别是实数部分 RE 、虚数部分 IM 、虚数单位 i , RE 和 IM 均为 float 。
Go语言提供两种类型的复数,分别是 complex64 即32位实数和虚数, complex128 即64位实数和虚数, complex128 为复数的默认类型。
复数声明
z 表示复数的变量名, complex128 表示复数类型, complex() 内置函数用于为复数赋值。 x 和 y 分别表示构成该复数的两个 float64 类型的值, x 为实部, y 为虚部。
简写形式
对于 z 值可通过内置函数 real(z) 获取该复数的实部,使用 imag(z) 获取虚部。
C语言中变量的声明/定义格式如下:存储类型 类型修饰符 数据类型 变量名;存储类型:用来指明变量的存储位置,即运行该变量在哪一段分配内存空间,常见的存储位置余渣兄有auto、extern、register、static,在一段执行程序中,可以为梁核变量分配存储空间的有BSS、数据区、栈区、堆区。类型修饰符:用来修饰变量的存储和表现方式。包括long、short、signed、unsigned、void、const、volatile等。数据类型:用来指明该变量的存储大小,即一个该类型的变量要占用多少内存空间。基本数据类型有(char、int、float、指针类型)和由基本数据竖袭类型组成的用户自定义类型(struct、enum、typedef、union)