Golang基础(二)

1. 条件语句 if ... else if ... else... 

package main
import "fmt"


func main() {
    var a int = 30
    if a < 20 {
        fmt.Printf("a小于20\n")
    } else if a > 20 {
        fmt.Printf("a大于20\n")
    } else {
        fmt.Printf("a等于20\n")
    }
    fmt.Printf("a的值为: %d\n", a)
}

2. 嵌套if ... else

package main
import "fmt"


func main() {
    var a int = 40
    var b int = 50
    if a > 30 {
        fmt.Printf("a大于30\n")
        if b < 60 {
            fmt.Printf("b大于60\n")
        } else {
            fmt.Printf("b不大于60\n")
        }
        fmt.Printf("b的值为: %d\n", b)
    } else {
        fmt.Printf("a不大于30\n")
    }
    fmt.Printf("a的值为: %d\n", a)
}

3. 循环语句 for

break、continue、goto的配合使用

goto: 将控制转移到被标记的语句

package main
import "fmt"

func main() {
    var a, b int
    b = 1
    // A是一个for循环语句
    A: for b < 100 {
        b++
        for a=2; a<b; a++ {
            if b%a == 0 {
                goto A  //不是素数,重新执行A语句
            }
        }
        fmt.Println(b, "是素数")
    }
}

 下面和上面的代码都是输出1-100之间的素数

package main
import "fmt"

func main() {
    var a, b int
    //a从2开始循环到100
    for a=2; a<=100; a++ {
        //b从2开始循环到a/b,
        for b=2; b<=(a/b); b++ {
            if a%b == 0 {
                break  //不是素数跳出本次循环
            }
        }
        if b > (a/b) {
            fmt.Println(a, "是素数")
        }
    }
}

 

转载于:https://www.cnblogs.com/delav/p/10115278.html

Machinery 是一个 Go 语言的异步任务队列和作业队列,基于分布式消息传递。类似 Python 的 Celery 框架。Machinery 中的任务(或者作业)可通过多个 worker 在很多服务器上并发的执行,或者可在单个服务器上利用 Go 的协程运行多个 worker 进程。任务的定义:type AddTask struct{} func (t AddTask) Run(args []interface{}) (interface{}, error) {     parsedArgs, err := machinery.ParseNumberArgs(args)     if err != nil {         return nil, err     }     add := func(args []float64) float64 {         sum := 0.0         for _, arg := range args {             sum  = arg         }         return sum     }     return add(parsedArgs), nil } type MultiplyTask struct{} func (t MultiplyTask) Run(args []interface{}) (interface{}, error) {     parsedArgs, err := machinery.ParseNumberArgs(args)     if err != nil {         return nil, err     }     multiply := func(args []float64) float64 {         sum := 1.0         for _, arg := range args {             sum *= arg         }         return sum     }     return multiply(parsedArgs), nil } // ... more tasks任务注册:tasks := map[string]machinery.Task{     "add":      AddTask{},     "multiply": MultiplyTask{}, } app.RegisterTasks(tasks) 标签:GoMachinery
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值