go基础知识复习之二

基本类型和变量

整型 int int8 int16(-32768-32767) int32 int64 uint uint8(0-255) uint16(0-65535) uint32 uint64 byte(字节存储) rune(等价于int32 存储一个unicode编码)
int类型的大小为 8 字节;int8类型大小为 1 字节(-128-127);int16类型大小为 2 字节;int32类型大小为 4 字节;int64类型大小为 8 字节
浮点型 float 32 64
字符串 string
bool true false

注意 双引号 单引号 反引号的区别

双引号用来创建可解析的字符串字面量(支持转义,但不能用来引用多行)
反引号用来创建原生的字符串字面量,这些字符串可能由多行组成(不支持任何转义序列),原生的字符串字面量多用于书写多行消息、HTML以及正则表达式
而单引号则用于表示Golang的一个特殊类型:rune,类似其他语言的byte但又不完全一样,是指:码点字面量(Unicode code point),不做任何转义的原始内容。

// demo\primitive-types.go
package demo

// go的基本类型
import (
	"fmt"
	"strconv"
)

func Primitive() {
	fmt.Println("基本类型:")

	// 基本类型和变量
	// 整型 int int8 int16(-32768-32767) int32 int64 uint uint8(0-255) uint16(0-65535) uint32 uint64 byte(字节存储) rune(等价于int32 存储一个unicode编码)
	// int类型的大小为 8 字节;int8类型大小为 1 字节(-128-127);int16类型大小为 2 字节;int32类型大小为 4 字节;int64类型大小为 8 字节
	// 浮点型 float 32 64
	// 字符串 string
	// bool true false
	// 注意 双引号 单引号 反引号的区别
	fmt.Println("基本类型之整型:")
	var num0 uint = 999
	var num1 int = -999
	fmt.Printf("整型:%d;%d.\n", num0, num1)

	fmt.Println("基本类型之浮点型:")
	var num3 float32 = 3.1415926
	fmt.Printf("%f\n", num3)

	fmt.Println("基本类型之布尔型:")
	var bool1 bool = true
	var bool2 bool = false
	fmt.Printf("%+v,%v\n", bool1, bool2)

	// ps:“%+v”会以字段键值对的形式key-value格式打印,“%v”只会打印字段值value信息
	type user struct {
		Name string
		Age  int
	}
	userInfo := user{
		Name: "Bill",
		Age:  25,
	}
	// 结构体打印(json格式等...)
	fmt.Printf("type:%T,%+v\n", userInfo, userInfo) // {Name:Bill Age:25}
	fmt.Printf("%v\n", userInfo)

	// 数据类型转换
	// strconv.Atoi(string) 字符串转整型 strconv.ParsInt(string,10,64) 字符串转浮点
	// strcov.Itoa(int) 整型转字符串 strconv.FormatInt(int64,10) int64转string
	// ParseFloat(string,32) 字符串转float32、float64   float32,err = ParseFloat(string,32) float64,err=ParseFloat(sting,64)
	// int64 to int  int:=int(int64)
	// int to int64 int64:= int64(int)
	var str string = "123"
	int1, err := strconv.Atoi(str)
	fmt.Printf("%v,%T:%d,%T,%v\n", str, str, int1, int1, err)

	num2 := 100
	str2 := strconv.Itoa(num2)
	// #v表示用双引号包裹变量(生成该值的源代码片段) t表示变量类型 s表示字符类型变量 d表示数字变量
	fmt.Printf("type:%T value:%#v  value:%s\n", str2, str2, str2)
}

数据类型转换

strconv.Atoi(string) 字符串转整型 strconv.ParsInt(string,10,64) 字符串转浮点
strcov.Itoa(int) 整型转字符串 strconv.FormatInt(int64,10) int64转string
ParseFloat(string,32) 字符串转float32、float64 float32,err = ParseFloat(string,32) float64,err=ParseFloat(sting,64)
int64 to int int:=int(int64)
int to int64 int64:= int64(int)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值