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++要方便得多,因为在库函数中有现有的可以直接调用的方法,可以直接判别字符串啊等等的东西,还是比较便利的一种语言。