美文网首页Go
golang第一天

golang第一天

作者: 陌生人的头像 | 来源:发表于2019-02-26 22:53 被阅读13次

    环境搭建

    1. win10环境,.msi软件一直下一步,安装结束,path环境变量自动配置
    2. 测试环境是否搭建成功,使用go version命令
    1.png

    测试代码

    • hello.go, 包含go的基本语法和类型
    package  main   //主包
    
    import (
        "fmt"   //打印模块
        "math"  //数据运算模块
    )
    
    /**
     * 常量的声明
     * 只能为:布尔型、数字型(整数型、浮点型和复数)和字符串型
     */
    const (
        MY_NAME = "JACK"
        MY_AGE int = 19
        MY_FLAG bool = true
    )
    
    /**
     * 程序入口 main函数和main包
     */
    func main()  {
        /**
         * 声明一个字符串类型变量
         */
        var message string = "hello,go!"
        fmt.Println(message)
    
        /**
         * 声明变量的两种方式
         */
        var age int =10
        name := "jack"
    
        /**
         * 占位符格式
         */
        fmt.Printf("%d\n", age)
        fmt.Printf("%s\n", name)
    
        /**
         * if-else
         */
        if age>10 { //if-else
            fmt.Println("old")
        } else {
            fmt.Println("young")
        }
    
        /**
         * for循环, while, do-while不存在(for写出)
         * break,continue类似其他语言
         */
        for idx:=0; idx<100; idx++ {    //循环语句,
            fmt.Println("idx=", idx)
        }
    
        for age<20 {    //while
            fmt.Println("age=", age)
            age++
        }
    
        num1, num2 := 10, 20
        num1, num2 = swap(num1, num2)
        fmt.Println(num1, num2)
    
        /**
         * 2-100内的质数
         */
        for idx:=2; idx<=100; idx++ {
            if is_prime(idx) {
                fmt.Printf("%d是质数\n", idx)
            }
        }
    
    
        /**
         * switch-case
         */
        var myAge int = 50
        switch myAge {
        case 50, 60:
            fmt.Println("a")
            fallthrough         //强制执行下一条case
        case 40:
            fmt.Println("b")
        case 30:
            fmt.Println("c")
        }
        //output: a
        //fallthrough存在,output: a b
    
    }
    
    /**
     * 判断是否为质数
     * 返回为bool, 布尔类型
     */
    func is_prime(num int) bool {
        for idx:=2;idx<=int(math.Sqrt(float64(num))); idx++ {   //暂时这样写
            if num%idx==0 {
                return false
            }
        }
        return true
    }
    
    /*
     * 返回多个值
     */
    func swap(num1 int, num2 int) (int, int)  {
        return num2, num1
    }
    
    //go run hello.go编译且运行程序
    //go build hello.go生成hello.exe的可执行文件
    //output: hello,go!
    

    • 打卡时间22:52

    相关文章

      网友评论

        本文标题:golang第一天

        本文链接:https://www.haomeiwen.com/subject/qbxtuqtx.html