Go语言学习笔记(1):基本介绍及数据类型回顾

本文介绍了Go语言的基本环境配置,包括GOROOT、GOPATH和Path设置,以及编译和运行的基本操作。强调了Go代码的特性,如大小写敏感、不需分号结尾等。还详细讲解了数据类型,如字符、布尔的表示和转换,并提到了数据类型转换和字符串的拼接方法。此外,讨论了Go中的值类型和引用类型的区别以及内存管理。
摘要由CSDN通过智能技术生成

一、基本介绍

1. 环境配置:
	GOROOT:指定go sdk的安装目录,sdk是软件开发工具包;
	GOPATH:golang的工作目录,源码都放在这个目录下面;
	Path:sdk/bin下,如go.exe,godoc.exe,gofmt.exe
2. 编译:go build 源文件;	运行:go run 源文件;
3. 注意事项:
1)go代码严格区分大小写;
2)语句结尾不用写分号;
3)定义的变量及import的包,必须要使用,否则会报错;
4)不可把多条语句放在同一行,因为编译时默认在行尾加分号;
5)注意拼写错误,如文件名、路径写错等等;
6)import前的下划线'_',表示忽略这个包;
7)变量前'_'用于忽略这个接收的返回值参数;

8)如果变量名、函数名、常量名首字母大写代表共有,小写代表私有,没有public,private关键字,就是通过首字母是否大小来控制(比如引用其他自定义包的变量函数等)。


二、数据类型之字符(串)、布尔

  1. go语言中,字符类型用byte表示,0-255(ASCII码表对应的所有字符都可以表示);
  2. 如果超过255,如中文汉字,则需要用int来表示,可以表示到65535的码值;
  3. 字符(包括中文字符)的存储方式是,字符 -> 对应编码值(如21271)-> 转换为二进制 -> 存储;
  4. bool类型(只能是true和false,不能是1,-1这些来表示)只占一个字节,可用unsafe.sizeof(bool值)来测类型占用的字节大小,默认是false
  5. 字符串的输出,可以使用``来输出类似代码块的文本;
  6. 如果需要做字符串的拼接,需要将+这个连接符号放在行尾去连接下一行;
  7. 格式化输出:
    %v:按原值输出

三、数据类型转换

1、func Sprint(format string, a …interface{})
string中的a …interface{}表示空接口,可以接收任何类型的参数;
2、格式化输出,%q表示按字符串类型输出,并且自动加上" ";
3、格式化转换也可以使用strconv这个包里的函数,如strconv.FormatInt, strconv.Float等;
strconv.Float(num4, ‘f’, 10, 64); //‘f’:格式,10:小数保留位,64:小数是float64
4、string转基本类型(如int、float、bool),如果是不能转的,直接默认转为0或false;
5、go文件里的包名应该和所在的文件夹名字保持一致;

四、数据类型分类

1、值类型:int系列、float系列、bool、string、数组和结构体struct;
2、引用类型:指针、slice切片、map、管道chan、接口inferface等;
3、指针本身也有地址,只是它存的也是地址;
4、通常情况下,值类型放在栈区,引用类型放在堆区,GC垃圾回收就是回收堆区的内存;
5、由于go的逃逸分析,会在编译时决定到底要放在栈区还是堆区,如果使用的时间长,那么一般会放到堆区;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一生要强的Zz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值