4、Go编程:自定义类型、文件处理与字符串替换

Go编程:自定义类型、文件处理与字符串替换

1. Go自定义类型与方法

在Go中创建自定义类型通常很直接,不像其他许多语言那样繁琐。对于不修改自定义类型的方法,使用值接收器还是指针接收器需要根据类型的“重量”来决定。

  • 轻量级类型 :对于轻量级表示的自定义类型(如几个整数或字符串),使用值接收器是合理的。
  • 重量级类型 :对于重量级自定义类型,通常最好始终使用指针接收器,因为传递指针(通常是简单的32位或64位值)比传递大值要便宜得多,即使在不修改值的方法中也是如此。

Go在处理指针和方法调用时很智能:
- 当对值调用需要指针的方法时,Go会传递值的地址(前提是该值是可寻址的)。
- 当对指针调用需要值的方法时,Go会解引用指针并传递指向的值。这也是Go不需要像C和C++中 -> 间接运算符的原因。

2. Go文件处理与字符串替换示例

为了使编程语言具有实际用途,它必须提供读取和写入外部数据的方法。下面我们将通过一个示例程序来介绍Go的文件处理和字符串替换功能。该程序将读取一个文本文件,并将其中的英式英语单词替换为美式英语单词,然后将结果写入一个新文件。

2.1 导入包
import (
    "bufio"
    "fmt"
    "io"
    "io/ioutil"
    "log"
    "os"
    "path/filepath"
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值