当前位置: 首页 > news >正文

字节后端入门 - Go 语言原理与实践

1.1什么是Go语言

1.2Go语言入门 环境

1.3基础语法

1.3.1变量

var name="value" 自己推断变量类型;

也可以显式类型 var c int =1

name:= type(value)

常量: const name ="value"

g := a+"foo" 字符串拼接

1.3.2 if else

{}花括号不能省略,if后的条件没有();

1.3.3 只有for循环

1.3.4 switch

C++中没有break,会继续跑完所有分支

而Go中默认不用加break,跑完一个case 就直接退出;

并且Go的switch更加强大,switch后面可以不加变量,case 后面可以加条件语句,替代if-else

1.3.5 数组

真实业务中,因为数组长度固定很少用,更多使用切片

1.3.6 切片

append()必须返回值赋值给原切片; 追加元素;

1.3.7 map无序

使用最频繁的数据结构

name :=make(map[key]value-type)

r,ok :=m["unknow"] ,ok 获取这个map里是否存在这个key

1.3.8 range 快速遍历

1.3.9 函数

函数参数(name type)

1.3.10 指针*

主要操作:对传入的参数 进行修改

比C++的指针 操作有限

1.3.11 结构体

1.3.12 结构体方法

func check(u user,pass string) bool{

return u.pass==pass

}

修改参数位置 从普通函 数变成类成员函数

func (u user) check(pass string) bool{

return u.pass==pass

}

1.3.13 错误处理

不同于java的异常,Go用单独的返回值err error返回错误信息

能够很清晰的知道哪个函数出现了错误,用ifelse处理错误

1.3.14 字符串操作

Contains 是否包含

Count 字符串包含几个子字符串

Index 查找位置

Join 拼接

Repeat 重复拼接,等

len 一个中文字符会对应多个字符长度

1.3.15 字符串格式化

println 打印换行

printf() 格式化 %v代表各种变量值;%+v代表更加详细的name:value变量;

%#v代表详细到 结构体.变量; %.2f 位数

1.3.16 JSON处理

只要保证结构体的第一个字母是大写,

用json.Marshal(结构体name)序列化 转成数组

打印String强转

json.Unmarshal(结构体name)反序列化

1.3.17 时间处理

1.3.18 数字解析 strconv包

ParseInt("字符串",进制(0代表自动推测) ,64代表返回64精度的整数 )

1.3.19 进程信息

http://www.lryc.cn/news/64010.html

相关文章:

  • 锂电材料浆料匀浆搅拌设备轴承经常故障如何处理?
  • 设计模式——设计模式介绍和单例设计模式
  • 利用Iptables构建虚拟路由器
  • C++——类和对象[中]
  • Symbol.iterator和Symbol.asyncIterator
  • 忆暖行动|“他一个人推着老式自行车在厚雪堆的道路上走,车上带着学生考试要用的司机”
  • Python中True、False、None的判断(避坑)
  • Spring Bean定义有哪些方式?
  • JVM内存模型的演变
  • DataX3同步Mysql数据库数据到Mysql数据库和DataX3同步mysql数据库数据到Starrocks数据库
  • 你是否曾经为自己写的代码而感到懊恼?那如何才能写出高质量代码呢?
  • 常用 Composition API【VUE3】
  • --商业模式--
  • JavaWeb《HTML基础标签》
  • ChatGpt 能取代人类吗?
  • PHP内存溢出Allowed memory size of 解决办法
  • 重回代码,学习总结
  • 【Leetcode -86.分隔链表 -92.反转链表Ⅱ】
  • 算法记录 | 48 动态规划
  • CRM部署Always on 后 CRM报无法更新数据库,数据库只读,且读写分离不正常
  • 麓言信息设计创意思维,打开设计师思路
  • POJ3704 括号匹配问题 递归方法
  • leetcode — JavaScript专题(三):完全相等的 JSON 字符串、复合函数、 分组、柯里化、将对象转换为 JSON 字符串
  • OGNL 的表达式
  • JAVA面试中遇到的那些坑,80%的人都种过招
  • 【测试开发】单元测试、基准测试和性能分析(以 Go testing 为例)
  • linux中一条命令查询当前端口的进程,然后拿到进程pid,作为另一条杀死进程的参数
  • 程序员找工作难吗?我用亲身经历来告诉大家
  • 【Web服务】HTTP和DNS重要知识
  • 【C++】-关于类和对象的默认成员函数(中)-拷贝构造函数和赋值运算符重载函数