袋岖荤 发表于 2025-10-5 18:14:18

2.Go基础语法

1.fmt

package main
import "fmt"
func main() {

    fmt.Println("Hello World")

    fmt.Println("打印中文")

    fmt.Print("我不换行打印", "后面还有。")

    fmt.Printf("我是%s,中间拼接\n", "敬YES")

    fmt.Println("我是", "敬YES")

    //拼接的字符串放到一个变量中

    temp := fmt.Sprintf("我叫%s,今年%d岁,身高%f米\n", "张三", 20, 1.75)

    fmt.Println(temp)

}

[*]fmt.printf: 格式化打印
[*]fmt.Sprintf: 格式化后的字符串存到一个变量中
[*]fmt.Println: 换行打印
2. 变量

定义变量

[*]var关键字定义变量
[*]语法糖直接给变量赋值
变量类型:reflect.TypeOf(temp)
package main

import "fmt"
import "reflect"

func main() {

    //第一种:使用var关键字定义变量

    //1.var 关键字定义变量

    var name string = "敬YES"

    fmt.Println("我的名字是", name)


    //2.先用var定义变量,再赋值

    var age int

    age = 30

    fmt.Println("我的年龄是", age)


    //3.多变量同时定义

    var a, b, c int = 1, 2, 3

    fmt.Println("a,b,c的值是", a, b, c)


    //4.定义多个变量类型不同

    var (

        name2 string = "敬YES"

        age2  int    = 30

        sex   string = "男"

    )

    fmt.Println("我的名字是", name2, "我的年龄是", age2, "我的性别是", sex)


    //第二种:使用语法糖定义变量

    isvalid := true

    fmt.Println(isvalid)


    //如何确定变量类型

    var temp = 100

    fmt.Printf("temp的类型是%T\n", temp)


    //reflect.TypeOf() 获取变量类型

    fmt.Println(reflect.TypeOf(temp))

}3. 常量

const关键字定义常量
func main() {

    const a, b, c = 1, 2, 3

    fmt.Println(a, b, c)

}4. 函数和作用域

func关键字自定义函数
func main() {

    printAd()

}



func printAd() {

    fmt.Println("Hello World")

    fmt.Printf("课程免费体验")

}注意:全局变量不能使用语法糖声明
var name string = "全局变量"
//错误
name3 :="全局语法糖"5. 字符串和数值运算

func numOperation(a, b int) {

    fmt.Println("数值运算:")

    fmt.Printf("%d + %d =%d\n", a, b, a+b)

    fmt.Printf("%d - %d =%d\n", a, b, a-b)

}


func stringOperation(a, b string) {

    result := fmt.Sprintf("%s %s", a, b)

    fmt.Printf("%s和%s拼接结果是:%s\n", a, b, result)

}


func display(name string, age int) {

    result := fmt.Sprintf("你好,我叫%s,今年%d岁。", name, age)

    fmt.Println(result)

}除法,要注意类型转换
fmt.Printf("%d / %d = %f \n", a, b, float32(a)/float32(b))6. for循环

for和if语句不加括号
func main() {

    count := 0

    for i := 0; i < 100; i++ {

        if i%2 == 0 {

            count++

        }

    }

    fmt.Printf("偶数个数:%d", count)

}go语言中实现while循环逻辑也用for循环
func f2(num int) {

    count := 0

    i := 0

    for i < num {

        if i%2 == 1 {

            count++

        }

    }

    fmt.Printf("奇数个数:%d\n", count)

}7. 时间格式化

间歇的写法:time.sleep(time.Second * 5)
获取当前时间:time.Now()
GO这个时间格式化有点搞笑:是用go语言的诞生时间 "2006-01-02 15:04:05"
func f3() {

    for {

        fmt.Println("当前时间是:", time.Now().Format("2006/01/02 15:04:05"))

        fmt.Println("当前时间是:", time.Now().Format("06/01/02 15:04"))

        fmt.Println("你好")

        time.Sleep(time.Second * 5)

    }

}
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: 2.Go基础语法