当前位置:首页 > 科技  > 软件

Go(Golang)的十个常见代码片段用于各种任务

来源: 责编: 时间:2024-01-03 09:12:31 327观看
导读探索有用的Go编程代码片段提供“前10名”Go(Golang)代码片段的明确列表是具有挑战性的,因为代码片段的实用性取决于您试图解决的具体问题。然而,我可以为您提供十个常用的Go代码片段,涵盖了各种任务和概念:1. Hello World:p

探索有用的Go编程代码片段

提供“前10名”Go(Golang)代码片段的明确列表是具有挑战性的,因为代码片段的实用性取决于您试图解决的具体问题。然而,我可以为您提供十个常用的Go代码片段,涵盖了各种任务和概念:24X28资讯网——每日最新资讯28at.com

24X28资讯网——每日最新资讯28at.com

1. Hello World:

package mainimport "fmt"func main() {    fmt.Println("Hello, World!")}

2. Reading Input from Console:

package mainimport (    "fmt"    "bufio"    "os")func main() {    scanner := bufio.NewScanner(os.Stdin)    fmt.Print("Enter text: ")    scanner.Scan()    input := scanner.Text()    fmt.Println("You entered:", input)}

3. Creating a Goroutine:

package mainimport (    "fmt"    "time")func printNumbers() {    for i := 1; i <= 5; i++ {        fmt.Println(i)        time.Sleep(time.Second)    }}func main() {    go printNumbers()    time.Sleep(3 * time.Second)}

4. Working with Slices:

package mainimport "fmt"func main() {    numbers := []int{1, 2, 3, 4, 5}    fmt.Println("Slice:", numbers)    fmt.Println("Length:", len(numbers))    fmt.Println("First Element:", numbers[0])}

5. Error Handling:

package mainimport (    "errors"    "fmt")func divide(a, b float64) (float64, error) {    if b == 0 {        return 0, errors.New("division by zero")    }    return a / b, nil}func main() {    result, err := divide(10, 2)    if err != nil {        fmt.Println("Error:", err)        return    }    fmt.Println("Result:", result)}

6. HTTP Server:

package mainimport (    "fmt"    "net/http")func handler(w http.ResponseWriter, r *http.Request) {    fmt.Fprintln(w, "Hello, HTTP!")}func main() {    http.HandleFunc("/", handler)    http.ListenAndServe(":8080", nil)}

7. JSON Marshalling and Unmarshalling:

package mainimport (    "fmt"    "encoding/json")type Person struct {    Name  string `json:"name"`    Age   int    `json:"age"`}func main() {    jsonStr := `{"name":"Alice", "age":30}`    var person Person    err := json.Unmarshal([]byte(jsonStr), &person)    if err != nil {        fmt.Println("Error:", err)        return    }    fmt.Println("Name:", person.Name)    fmt.Println("Age:", person.Age)}

8. Concurrency with Wait Groups:

package mainimport (    "fmt"    "sync")func worker(id int, wg *sync.WaitGroup) {    defer wg.Done()    fmt.Printf("Worker %d started/n", id)}func main() {    var wg sync.WaitGroup    for i := 1; i <= 5; i++ {        wg.Add(1)        go worker(i, &wg)    }    wg.Wait()    fmt.Println("All workers have finished.")}

9. Reading and Writing Files:

package mainimport (    "fmt"    "io/ioutil")func main() {    data := []byte("Hello, File!")    err := ioutil.WriteFile("example.txt", data, 0644)    if err != nil {        fmt.Println("Error:", err)        return    }    content, err := ioutil.ReadFile("example.txt")    if err != nil {        fmt.Println("Error:", err)        return    }    fmt.Println("File Content:", string(content))}

10. Sorting Slices:

package mainimport (    "fmt"    "sort")func main() {    numbers := []int{5, 2, 9, 1, 5}    sort.Ints(numbers)    fmt.Println("Sorted Slice:", numbers)}

这些代码片段涵盖了从基本的I/O操作到并发、错误处理等常见Go编程任务和概念。请随意根据您在Go项目中的需要进行调整和使用。24X28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-56586-0.htmlGo(Golang)的十个常见代码片段用于各种任务

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 万字+20张图探秘Nacos注册中心核心实现原理

下一篇: PyCharm必备,七个实用插件助你事半功倍

标签:
  • 热门焦点
  • 6月iOS设备性能榜:M2稳居榜首 A系列只能等一手3nm来救

    没有新品发布,自然iOS设备性能榜的上榜设备就没有什么更替,仅仅只有跑分变化而产生的排名变动,毕竟苹果新品的发布节奏就是这样的,一年下来也就几个移动端新品,不会像安卓厂商,一
  • 一文搞定Java NIO,以及各种奇葩流

    大家好,我是哪吒。很多朋友问我,如何才能学好IO流,对各种流的概念,云里雾里的,不求甚解。用到的时候,现百度,功能虽然实现了,但是为什么用这个?不知道。更别说效率问题了~下次再遇到,
  • Temu起诉SHEIN,跨境电商战事升级

    来源 | 伯虎财经(bohuFN)作者 | 陈平安日前据外媒报道,拼多多旗下跨境电商平台Temu正对竞争对手SHEIN提起新诉讼,诉状称Shein&ldquo;利用市场支配力量强迫服装厂商与之签订独家
  • “又被陈思诚骗了”

    作者|张思齐 出品|众面(ID:ZhongMian_ZM)如今的国产悬疑电影,成了陈思诚的天下。最近大爆电影《消失的她》票房突破30亿断层夺魁暑期档,陈思诚再度风头无两。你可以说陈思诚的
  • ESG的面子与里子

    来源 | 光子星球撰文 | 吴坤谚编辑 | 吴先之三伏大幕拉起,各地高温预警不绝,但处于厄尔尼诺大&ldquo;烤&rdquo;之下的除了众生,还有各大企业发布的ESG报告。ESG是&ldquo;环境保
  • 携众多高端产品亮相ChinaJoy,小米带来一场科技与人文的视听盛宴

    7月28日,全球数字娱乐领域最具知名度与影响力的年度盛会中国国际数码互动娱乐展览会(简称ChinaJoy)在上海新国际博览中心盛大开幕。作为全球领先的科
  • 2纳米决战2025

    集微网报道 从三强争霸到四雄逐鹿,2nm的厮杀声已然隐约传来。无论是老牌劲旅台积电、三星,还是誓言重回先进制程领先地位的英特尔,甚至初成立不久的新
  • 最薄的14英寸游戏笔记本电脑 Alienware X14已可以购买

    2022年1月份在国际消费电子展(CES2022)上首次亮相的Alienware新品——Alienware X14现在已经可以购买了,这款笔记本电脑被誉为世界上最薄的 14 英寸游戏笔
  • 中关村论坛11月25日开幕,15位诺奖级大咖将发表演讲

    11月18日,记者从2022中关村论坛新闻发布会上获悉,中关村论坛将于11月25至30日在京举行。本届中关村论坛由科学技术部、国家发展改革委、工业和信息化部、国务
Top