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"
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



