go
爱吃椰子鸡的明玉
面朝大海,春暖花开。
愿我一直乐观,开心向上,内心温暖。
展开
-
go学习记——(10)数组与切片
数组与切片数组数组是值类型。取地址&变量名;数组的第一个元素的地址,就是数组的地址;数组的每个元素的地址间隔是依据数组的类型决定,比如int64-》8 interweb2-》4四种数组初始化方式 var numsArray01 [3]int = [3]int{1, 2, 3} var numsArray02 = [3]int{1, 2, 3} var numsArray03 = [...]int{1, 2, 3} var numsArray04 = [3]string{1: "原创 2020-08-03 15:11:37 · 174 阅读 · 0 评论 -
go学习记——(9)函数
函数函数的形参列表可以是多个,返回值列表也可以是多个。基本数据类型和数组默认都是值传递的,即进行值拷贝。在函数内修改,不回影响到原来的值。如果希望函数内的变量能修改函数外的变量,可以传入变量的地址&,函数内以指针的方式操作变量。Go函数不支持传统的重载。包包的三大作用:区分相同名字的函数、变量等标识符;当程序文件很多时,可以很好的管理项目控制函数、变量等访问范围,即作用域包的相关说明打包的基本语法package 包名引入包的基本语法import "包原创 2020-07-25 18:10:15 · 119 阅读 · 0 评论 -
go学习记——(8)循环
字符串遍历package mainimport ( "fmt")func main() { var str string = "hello,world!" // 传统方式:按字节遍历,所以汉字在utf8通常对应3个字节,如字符串中有汉字会出现乱码 for i := 0; i < len(str); i++ { fmt.Printf("%c \n", str[i]) } // 解决办法 var str1 string = "你好" str2 := []rune(str.原创 2020-07-12 16:43:24 · 100 阅读 · 0 评论 -
go学习记——(7)流程控制switch
匹配项后面不需要加break细节:case/switch后是一个表达式(即,常量值、变量、一个有返回值的函数等都可以)case后的各个表达式的值的数据类型,必须和switch的表达式数据类型一致case后面可以带多个表达式,使用逗号间隔case后面的表达式如果是常量值(字面量),则要求不能重复case后面不需要带break,程序匹配到一个case后就会执行对应的代码块,然后推出switch,如果一个都匹配不到,则执行defaultdefault语句不是必须的switch后也可以不带表达式,原创 2020-05-14 19:11:20 · 145 阅读 · 0 评论 -
go学习记——(6)进制
对于整数,有四种表示方式:二进制:0,1。在golang中,不能直接使用二进制来表示一个整数。十进制:0-9.八进制:0-7.以数字0开头表示。十六进制:0-9,A-F。以0x开头。八进制转二进制:将八进制中的每一位转成对应的三位二进制。反之亦然。十六进制转二进制:将十六进制中的每一位转成对应的四位二进制。反之亦然。原码、反码、补码二进制的最高位是符号位,0表示正数,1表示负数正数的原码、反码、补码都一样负数的反码=它的原码符号位不变,其他位取反负数的补码=它的反码+10的反码原创 2020-05-14 19:09:49 · 187 阅读 · 0 评论 -
go学习记——(5)获取用户终端输入
fmt.Scanln()获取package mainimport ( "fmt")func main() { // 要求:可以从控制台接收用户信息,【姓名,年龄,薪水,是否通过考试】 var ( name string age byte sal float32 isPass bool ) // 方式1:fmt.Scanln fmt.Println("请输入姓名") fmt.Scanln(&name) fmt.Println("请输入年原创 2020-05-14 18:55:19 · 396 阅读 · 0 评论 -
go学习记——(4)运算符
算数运算符细节对于除号“/”,它的整数和小数除是有区别的,整数之间做除法时,只保留证书部分而舍弃消暑部分。例如,x:=19/5结果是3.当对一个数取模时,可以等价 a%b=a-a/b*b,这样我门可以看到取模的一个本质运算。逻辑运算符&&也叫短路与,false && 条件二不会判断,最终结果为false。||也叫短路或,true || 条件二不会判断,最终结果为true。赋值运算符package mainimport ( "fmt")func原创 2020-05-14 18:53:24 · 133 阅读 · 0 评论 -
go学习记——(3)数据类型
部分数据类型概念bit:计算机中最小存储单位;byte:1byte = 8bit,计算机中基本存储单元,0<=number<=255范围内推荐使用byte;int:超出byte的使用范围,推荐用int;bool:占一个字节,不可与其他数据类型转换string:一旦赋值了,字符串就并不能修改了,go中字符串是不可变的。反引号可以含特殊字符,防止攻击科学计数法:5.12e2=5.12乘以10的2次方;5.12E-2=5.12除以10的2次方;基本数据类型的相互转原创 2020-05-14 18:47:12 · 120 阅读 · 0 评论 -
go学习记——(2)变量与常量
变量声明// 变量必须先声明再使用var s1 stringvar( name = "nihao" age = 100 isOk = false)func main(){ var s="sss" a:=1 var n1, n2, n3 = "100", 1, 2 n1, n2, n3 := "100", 1, 2 }常量const pi=3.1415926const( statusOK=200 notFound=4原创 2020-05-14 18:33:45 · 92 阅读 · 0 评论 -
go学习记——(1)go环境及遇到相关问题
解决国内go get 无法下载问题go env -w GO111MODULE=ongo env -w GOPROXY=https://goproxy.cn,direct可执行文件的执行方式1. windows双击文件2. mac ./**跨平台编译,交叉编译Mac下编译Linux, Windows平台的64位可执行程序:$ CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build test.go$ CGO_ENABLED=0 GOOS=windo原创 2020-05-14 18:19:51 · 822 阅读 · 0 评论