GO语言基础语法 | 青训营笔记

38 阅读2分钟

Go语言基础语法中与C/C++语言不同的地方

在变量定义中

①var 变量名字= Value,

②变量名 := Value,

将变量变为常量只需要将①中的var换成const即可。

if 后无括号,且必须有花括号 。

Go语言中无while,do...while。

for循环中无内容就是死循环;

Switch...case 不需要有break,且Switch后可以加任意变量,

切片=>是可变长度的数组,用make定义

append => 数组扩容

copy 拷贝数据

在map中, make创建时可以写成make(key,value) ,

在输出map时,可将Println变成Println(key,ok),来判定是否有key,是则返回true,反之为false

Go语言中的字符串是内置类型,可通过”+“拼接,也可用”=“比较两个字符串是否相等。

在函数(方法)中,变量类型相较于C语言的地方为:变量后置,可以返回两个值,一个是真正的值,第二个返回是否存在。

标准库string包中存在工具函数:

strings.Contains => 判断一个字符串中是否包含另外一个字符串;

strings.Count => 字符串计数(某个字母或字符串出现的次数);

strings.Index => 查找某个字符串的位置;

strings.Join => 连接两个字符串;

strings.Repeat => 重复某个字符串;

len(字符串名字)=> 获取某个字符串的长度;

输出:

%v => 可输出任意类型的变量;

%+v => 输出更加详细的结果;

%#v => 进一步更详细(对于结构体);

结构体后+”json:新名字“ 输出时是输出的新名字;

时间格式: time.Now() 输出当前时间;

sub() => 对两个时间做减法;

time.Format => 格式化时间;

数字解析:在strconv包下 ParseInt(”字符串“,进制,返回多少位精度),

Atoi:将十进制字符串转化为数字;

itoA:将数转化为字符串;

进程信息:

os。Args 获取进程在执行时的一些命令行参数;

可以使用 os.Getenv 或 os.Setenv 获取或写入环境变量

我对本节课的感悟是:Go语言比C和C++要方便得多,因为在库函数中有现有的可以直接调用的方法,可以直接判别字符串啊等等的东西,还是比较便利的一种语言。