首页 > 其他分享 >Go - A Tour of Go Exercise: Stringers

Go - A Tour of Go Exercise: Stringers

时间:2023-08-16 12:13:36浏览次数:32  
标签:string val ip IPAddr Stringers Tour Go Exercise

package main

import (
    "fmt"
    "strings"
    "strconv"
)

type IPAddr [4]byte

func (ip IPAddr) String() string {
    s := make([]string, len(ip))
    for i, val := range ip {
        s[i] = strconv.Itoa(int(val))
    }    
    return strings.Join(s, ".")
}

func main() {
    hosts := map[string]IPAddr{
        "loopback":  {127, 0, 0, 1},
        "googleDNS": {8, 8, 8, 8},
    }
    for name, ip := range hosts {
        fmt.Printf("%v: %v\n", name, ip)
    }
}

 

标签:string,val,ip,IPAddr,Stringers,Tour,Go,Exercise
From: https://www.cnblogs.com/zhangzhihui/p/17633663.html

相关文章

  • Golang 语言学习路线
    学习Go语言是一个很好的选择,它具有高效的编译速度、强大的并发支持和简洁的语法。适用于初学者的Golang学习路线:1.学习基础:安装Go:从官方网站下载并安装Go语言的最新版本。Hello,World!:学习如何编写一个简单的HelloWorld程序,并运行它。基本语法:了解Go的基本语法,包括变量、常......
  • Go语言中的switch语句
    Go语言提供了两种主要形式的switch语句,它们分别有不同的用途和特点。1.基于值的switch这种形式的switch语句是基于一个表达式的值来决定执行哪个case语句块。这与许多其他编程语言中的switch语句相似。语法:switchexpression{casevalue1://codetobeexe......
  • Go语言中的continue语句
    在Go语言中,continue语句用于跳过当前循环的剩余部分并立即开始下一次迭代。它只对for循环有效。以下是如何在Go中使用continue语句的一些示例:1.基本用法在此示例中,当遇到偶数时,continue将跳过循环的剩余部分并进入下一次迭代。packagemainimport"fmt"funcmai......
  • Go语言中的break语句
    在Go语言中,break语句用于立即退出当前控制结构,如for循环、switch或select语句。以下是break语句的使用方法和示例:1.基本用法在此示例中,当遇到值3时,break将中断循环。packagemainimport"fmt"funcmain(){fori:=0;i<5;i++{ifi==3......
  • 深入探索Go语言的垃圾回收机制
    引言:在当今的计算机世界中,垃圾回收机制已成为许多编程语言的重要组成部分,它有效地解决了内存泄漏等问题,提高了程序的安全性和可靠性。Go语言作为一门高效且强大的编程语言,其独特的垃圾回收机制吸引了众多开发者的关注。本文将深入探讨Go语言中垃圾回收机制的原理、优点及实现方式。......
  • 初识Go(Golang)语言(2)
    初识Go(Golang)语言(2)Go开发工具的使用1.vscode使用直接下载vscode(免费软件),在内部下载golang语言插件,即可使用。2.JetBrains全家桶之(Goland[IDE]),永久免费"试用"。下方仅供参考,过期了就过期了。一般所有去哪佳通都可以使用。(个人推荐第二种) (1.)https://www.only4.work/blog/?id......
  • go语言编程常见问题
    在Goland中运行单元测试报错Error:Cannotfindpackage如下图,在Goland中运行单元测试时报错:“Error:Cannotfindpackage”弹出如下报错提示窗口:解决办法:在Goland设置界面中取消勾选“EnableGomodulesintegration”。参考:goland中运行go时报packagexxxisnotinGO......
  • 学习go语言编程之网络编程
    Socket编程Golang语言标准库对Socket编程进行了抽象,无论使用什么协议建立什么形式的连接,都只需要调用net.Dial()即可。Dial()函数Dial()函数的原型如下:funcDial(network,addressstring)(Conn,error)参数含义如下:network:网络协议名字,如:tcp,udp等Dial()函数支持的网络......
  • 学习go语言编程之工程管理
    Go命令行工具安装了Go语言的安装包后,就直接自带Go命令行工具。#查看当前安装的Golang版本goversion#查看go命令行工具的帮助信息gohelpGo命令行工具可以完成如下工作:代码格式化代码质量分析和修复单元测试与性能测试工程构建代码文档的提取和展示依赖包管理执......
  • 学习go语言编程之安全编程
    数据加密对称加密采用单密钥的加密算法,称为对称加密。常见的单密钥加密算法有DES、AES、RC4等。在对称加密中,私钥不能暴露,否则在算法公开的情况下,数据等同于明文。非对称加密采用双密钥的加密算法,称为非对称加密。在该系统中,私钥和公钥都可以被用作加密或者解密,但是用私钥......