字符
-
介绍
字符是电子计算机中字母、数字、符号的统称,是数据结构中最小的数据存取单位,通常由8个二进制位(一个字节)来表示一个字符 -
表示类型
byte(uint8) byte 类型是 uint8 的别名
rune 类型,代表一个 UTF-8 字符,当需要处理中文、日文或者其他复合字符时,则需要用到 rune 类型,rune 类型是 int32 类型的别名 -
申请方法(使用方法)
参考变量的申请方式
package main
import “fmt”
func main() {
var str1 byte = ‘0’
str2 := “小阿肥”
fmt.Printf("str1 = %d, str2=%d\n", str1, str2)
fmt.Printf("str2 = %c, str2=%T\n", str2, str2)
str3 := 'a' // 对应的编码值
fmt.Printf("加和=%d, a的编码值=%d\n", 1 + str3, str3)
}
image.png
这里有一个坑,为什么需要单引号才能编译,不然会报错?
-
注意
单引号括起来
存储:字符-》ascii码值-》二进制
读取:二进制-》ascii码值-》字符
一个字符占一个字节,一个中文占3个字节
字符可以与整数进行算术运算(转成ascii码值再计算)
字符串型 -
介绍
字符串是的类型标识为string, 由数字、字母、下划线组成的一串字符。 在编程语言中用于表示文本的数据类型。 -
申请方法(使用方法)
申明并赋值
var str string
str = “Hello World”
通过反引号,原样输出
package main
import “fmt”
func main() {
var str = `
package main
import (
“fmt”
“unsafe”
)
func main() {
/**
* float32 4个字节
* float64 8个字节
*/
fmt.Println(real(num1), imag(num2))
}
`
fmt.Println(str)
}
image.png
获取字符串长度
var str = “hello, 小阿肥”
strLen := len(str) // 16
字符串遍历
通过for index := 0; index < strLen; index++ {}形式来遍历
for index := 0; index < strLen; index++ {
fmt.Printf(strLen[index])
}
通过for…range形式来遍历
// 通过range,在这种情况下中文就不会有问题,按照rune类型来打印
var str = “hello, 小阿肥”
for index, val := range str {
fmt.Printf(“通过for index … 索引:%d–字符值:%c–字符值类型;%T\n”, index, val, val) //val 的类型为 rune,即int32
}
参照字符类型
byte(uint8) byte 类型是 uint8 的别名
rune 类型,代表一个 UTF-8 字符,当需要处理中文、日文或者其他复合字符时,则需要用到 rune 类型,rune 类型是 int32 类型的别名
注意事项
双引号括起来
`` 反引号原样输出
字符串初始化之后不允许重新赋值
可以以字符数组下标的形式来读取,但不能赋值
len获取字符串长度
字符串相加即是拼接
数据类型转换: Type Convert
语法格式:Type(Value)
常数:在有需要的时候,会自动转型
变量:需要手动转型 T(V)
注意点:兼容类型可以转换
复合类型(派生类型)
指针类型(Pointer)
数组类型
结构化类型(struct)
Channel 类型
函数类型
切片类型
接口类型(interface)
Map 类型
最后
刚学golang,希望大家监督并且一起努力
有兴趣的小伙伴,欢迎关注我订阅号:EntrepreneurialG