书接上回,更多内容请移步主页查看“后端技术学习总结|青训营”系列。
Go语言语法初步讲解
- 函数,注意声明后置即可
//相加函数的定义
func add(a int, b int) int {
return a + b
}
func add2(a, b int) int {
return a + b
}
//返回索引k所在map中的值,有则显示并输出True,否则不显示并输出False
func exists(m map[string]string, k string) (v string, ok bool) {
v, ok = m[k]
return v, ok
}
func main() {
res := add(1, 2)
fmt.Println(res) // 3
//判断字符a在目标map中是否存在并返回逻辑值
v, ok := exists(map[string]string{"a": "A"}, "a")
fmt.Println(v, ok) // A True
}
-
指针(略,主要作用是对传入参数进行修改)
-
结构体、结构体方法
//定义user结构体
type user struct {
name string
password string
}
func main() {
a := user{name: "wang", password: "1024"}
b := user{"wang", "1024"}
c := user{name: "wang"}
c.password = "1024"
var d user
d.name = "wang"
d.password = "1024"
fmt.Println(a, b, c, d) // 等价{wang 1024}
//方法定义在下方
fmt.Println(checkPassword(a, "haha")) // false
fmt.Println(checkPassword2(&a, "1024")) // true
//结构体检查是否正确方法
c := user{name: "wang", password: "1024"}
c.resetPassword("2048")
fmt.Println(c.checkPassword("2048")) // true
}
//检查密码是否正确函数
func checkPassword(u user, password string) bool {
return u.password == password
}
//指针检查方法函数-同上作用
func checkPassword2(u *user, password string) bool {
return u.password == password
}
//结构体方法函数-同上作用
func (u user) checkPassword(password string) bool {
return u.password == password
}
//指针结构体方法重设密码
func (u *user) resetPassword(password string) {
u.password = password
}