Go基础语法5:基础数据类型

说明:

长度是指占用的内存资源
零值是指默认值

捕获.PNG

1.1布尔类型

var b1 bool = true

b2 := (1==1)	//b2会被自动推导为bool类型
//错误示例
var b bool
b = 1			//编译报错
b = bool(1)		//编译报错

1.2整型

var i int = 1

j := 2			//自动推导为2

1.3浮点型

var i float32 = 3.14	//go语言中没有float类型

j := 33.0				//如果不加小数点,会被自动推导为int,
						//加小数点,自动推导float64(为了确保计算精度)

1.4字符类型

在go语言中,支持两个字符类型
一个是:byte(uint8的别名),代表utf-8字符串的单个字节的值
另一个是:rune,代表单个 unicode字符

package main

import "fmt"

func main() {
	var ch1, ch2, ch3 byte
	ch1 = 'a'  //字符赋值
	ch2 = 97   //字符的ascii码赋值,也是a
	ch3 = '\n' //转义字符(换行符)
	fmt.Printf("ch1 = %c, ch2 = %c, %c", ch1, ch2, ch3)
}

运行结果:
捕获.PNG

1.5字符串

package main

import "fmt"

func main(){
	var str = "This is string"
	var ch = str[0]				//go也可以进行类似于python的切片
	fmt.Println(str)
	fmt.Println(string(ch))		//如不进行强制转换,输出的值为84('T'的ascii码)
}

运行结果:
捕获.PNG

1.6复数类型

复试实际上是由两个实数(在计算机中用浮点数)构成,一个是实部(real),一个是虚部(imag)

package main

import "fmt"

func main(){
	var c1 complex64		//由两个float32构成的复数形式
	c1 = 3.2 + 5.7i
	c2 := 5.6 + 79i			//为了确保精度,自动推导为complex128
	c3 := complex(5.6, 79)	//结果同c2
    fmt.Println(c1, c2, c3)
    
    //内置函数real()可以获得该复数的实部
    //内置函数imag()可以获得该复数的虚部
    fmt.Println(real(c1),imag(c1)) 
}

运行结果:
捕获.PNG

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值