Go基本数据类型

bool类型

布尔型的值只可以是常量 true 或者 false。⼀个简单的例⼦:var b bool = true

数值型

  1. 整数型

可以简单讲解⼀下⼆进制和位数的关系,以及int和uint的关系

  • int8 有符号 8 位整型 (-128 到 127) ⻓度:8bit
  • int16 有符号 16 位整型 (-32768 到 32767)
  • int32 有符号 32 位整型 (-2147483648 到 2147483647)
  • int64 有符号 64 位整型 (-9223372036854775808 到 9223372036854775807)
  • uint8 ⽆符号 8 位整型 (0 到 255) 8位都⽤于表示数值:
  • uint16 ⽆符号 16 位整型 (0 到 65535)
  • uint32 ⽆符号 32 位整型 (0 到 4294967295)
  • uint64 ⽆符号 64 位整型 (0 到 18446744073709551615)
  1. 浮点型

float32 32位浮点型数

float64 64位浮点型数

其他

byte 等于 uint8

rune 等于 int32

uint 32 或 64 位

字符

Golang中没有专⻔的字符类型,如果要存储单个字符(字⺟),⼀般使⽤byte(本质是uint8,英文是字符等省空间)来保存。

字符串就是⼀串固定⻓度的字符连接起来的字符序列。Go的字符串是由单个字节连接起来的。也就是说对于传统

的字符串是由字符组成的,⽽Go的字符串不同,它是由字节组成的。

复制代码
package main
import "fmt"
func main() {
    var a byte
    a = 'a'
    //输出ascii对应码值 。。 这⾥说明⼀下什么是ascii码
    fmt.Println(a)
    fmt.Printf("a=%c", a)
}

字符常量只能使⽤单引号括起来,例如:var a byte = 'a' var a int = 'a'

字符本质是⼀个数字, 可以进⾏加减乘除

复制代码
package main
import (
"fmt"
"reflect"
)
func main() {
a := 'a'
//这⾥注意⼀下 1. a+1可以和数字计算 2.a+1的类型是32 3. int类型可以直接变成字符
fmt.Println(reflect.TypeOf(a+1))
fmt.Printf("a+1=%c", a+1)
}

还有一个类型rune类型(实际上是int32) 也是用于存字符串,主要用于存中文

字符串

字符串就是⼀串固定⻓度的字符连接起来的字符序列。Go 的字符串是由单个字节连接起来的。Go 语⾔的字符串的字节使⽤ UTF-8 编码标识 Unicode ⽂本。

复制代码
package main
import (
"fmt"
)
func main() {
var name string
name ="good"
fmt.Printf(name)
}
相关推荐
微风中的麦穗15 分钟前
【MATLAB】MATLAB R2025a 详细下载安装图文指南:下一代科学计算与工程仿真平台
开发语言·matlab·开发工具·工程仿真·matlab r2025a·matlab r2025·科学计算与工程仿真
2601_9491465323 分钟前
C语言语音通知API示例代码:基于标准C的语音接口开发与底层调用实践
c语言·开发语言
开源技术34 分钟前
Python Pillow 优化,打开和保存速度最快提高14倍
开发语言·python·pillow
学嵌入式的小杨同学40 分钟前
从零打造 Linux 终端 MP3 播放器!用 C 语言实现音乐自由
linux·c语言·开发语言·前端·vscode·ci/cd·vim
mftang2 小时前
Python 字符串拼接成字节详解
开发语言·python
jasligea2 小时前
构建个人智能助手
开发语言·python·自然语言处理
kokunka3 小时前
【源码+注释】纯C++小游戏开发之射击小球游戏
开发语言·c++·游戏
云栖梦泽3 小时前
易语言开发从入门到精通:补充篇·网络编程进阶+实用爬虫开发·API集成·代理IP配置·异步请求·防封禁优化
开发语言
java1234_小锋4 小时前
Java高频面试题:SpringBoot为什么要禁止循环依赖?
java·开发语言·面试
铅笔侠_小龙虾4 小时前
Flutter Demo
开发语言·javascript·flutter