网站开发的完整流程seo排名优化app
Powered by:NEFU AB-IN
文章目录
- 走进 Go 语言基础语法 | 青训营 (1)
- 代码注释
- 代码模板
走进 Go 语言基础语法 | 青训营 (1)
-
代码注释
/** @Author: NEFU AB-IN* @Date: 2023-08-06 09:44:15* @FilePath: \GoTest\a.go* @LastEditTime: 2023-08-06 11:00:45*/ package mainimport ("bufio""fmt""os""strconv" )var (in = bufio.NewReader(os.Stdin)out = bufio.NewWriter(os.Stdout) )func Read[T any]() T {var i Tfmt.Fscan(in, &i)return i }const N int = 1e5 + 10// 函数 func add(a int, b int) (v int, ok bool) {return a + b, ok }func add2(a *int) {*a += 2 }// 结构体 type sa struct {x inty int }// 结构体方法(类成员函数) func (a sa) add(x int) bool {return a.x == 2 }func main() {defer out.Flush()// 1. variablea := "123"var b int = 2var c int64/*int 类型大小为 8 字节int8 类型大小为 1 字节int16 类型大小为 2 字节int32 类型大小为 4 字节int64 类型大小为 8 字节*/var d float64e := a + "foo"const s = "1231"fmt.Println(a, b, c, d) // 带换行fmt.Print(s) // 不带换行fmt.Println(e)// 2. if elsef := Read[int]()if f%2 == 0 {print("even")} else {print("odd")}// 3. 循环for i := 0; i < 10; i++ {fmt.Print("!")}// 4. 数组 两种声明方式var g [N]intvar h = [N]int{}fmt.Println(g, h)// 5. slice 切片j := make([]string, 3)j = append(j, "cc")fmt.Println(j[2:5])// 6. mapmp := map[string]int{}mp["xw"] = 100mp["lsy"] = 12l, ok := mp["xw"]fmt.Println(l, ok)delete(mp, "xw")for key, val := range mp {fmt.Println(key, val)}// 7. 给构体m := sa{x: 10}fmt.Println(m)// 8. 格式化fmt.Printf("f=%v\n", f)fmt.Printf("f=%+v\n", m)fmt.Printf("f=%#v\n", m)// 9. 转换y := 10z := "123"fmt.Println(strconv.Atoi(z))fmt.Println(strconv.Itoa(y))}
package mainimport ("bufio""fmt""os" )var (in = bufio.NewReader(os.Stdin)out = bufio.NewWriter(os.Stdout) )func Read[T any]() T {var i Tfmt.Fscan(in, &i)return i }const N int = 1e5 + 10func solve() {}func main() {defer out.Flush()T := Read[int]()for T > 0 {solve()T--} }