Golang 查找字符串的长度
什么是Golang中的字符串
在Go中,字符串是字符序列。它是一种不可变的数据类型,意味着一旦创建了一个字符串,就不能修改。字符串用双引号(“”)括起来,可以包含任何字母、数字和符号的组合。它们通常用于存储文本,并经常用作程序的输入和输出。
方法1:使用外部函数
在这种方法中,我们创建的函数将接受要计算长度的字符串作为参数,并以整数格式返回函数的最终长度。
步骤
- 步骤1 - 首先,我们需要导入fmt包。
-
步骤2 - 然后,我们需要创建一个名为stringLength()的函数。
-
步骤3 - 创建一个for循环来迭代字符串的字符,并在每次迭代中将长度变量递增。
-
步骤4 - 现在,开始main()函数。
-
步骤5 - 在main()函数内部初始化一个字符串类型的变量,并将其打印在屏幕上。
-
步骤6 - 现在,通过将字符串作为参数调用stringLength()函数,并将结果存储在一个新变量中。
-
步骤7 - 使用fmt.Println()函数将该变量打印在屏幕上。
示例
在这个示例中,我们将使用一个外部的用户定义函数来使用外部函数找到字符串的长度。
package main
import "fmt"
// Function to find the length of a string
func stringLength(str string) int {
var length int
for range str {
length++
}
return length
}
func main() {
// Initializing a string
str := "Hello, world!"
fmt.Println("The given string is:", str)
var result int = stringLength(str)
fmt.Println("Length of the above String is:", result)
}
输出
The given string is: Hello, world!
Length of the above String is: 13
方法2:使用内部包
在这个方法中,我们将编写一个Go语言程序,通过使用内部包来查找字符串的长度。
语法
func RuneCountInString(s string) (n int)
在utf-8包中存在 RuneCountInString() 函数,用于计算字符串的长度。这个函数接受一个要计算长度的字符串作为参数,并返回其长度的整数。
func TrimSpace(str string) string
trimSpace() 函数是字符串包中的函数,用于移除字符串中字符之间的空格。该函数接受字符串作为参数,并返回移除了单词之间空格后的最终字符串。
func len(v Type) int
len() 函数用于获取任何参数的长度。它接受一个参数作为数据类型变量,我们希望找到其长度,并返回表示变量长度的整数值。
func Count(s, sep []byte) int
Count() 函数存在于bytes包中,用于计算给定切片的实例数量。该函数接受两个参数,一个是要计算字符数的切片,另一个是要计算出现次数的分隔符。然后函数返回计算所需字符后的整数值。
步骤
- 步骤 1 - 首先,我们需要导入fmt和strings包。
-
步骤 2 - 然后,启动main()函数。
-
步骤 3 - 在main()函数中初始化一个字符串类型的变量并向其存储值。
-
步骤 4 - 进一步,使用fmt.Println()函数在屏幕上打印该值。
-
步骤 5 - 现在,使用一个名为TrimSpace()的内部函数,并将字符串作为参数传递给它。
-
步骤 6 - 现在,使用len()函数获取结果的长度。
-
步骤 7 - 使用fmt.Println()函数在屏幕上打印它。
示例1
使用Go语言的strings包来查找字符串的长度的示例
package main
import (
"fmt"
"strings"
)
func main() {
// initializing a string
str := "Prevention is better than cure"
fmt.Println("The given string is:", str)
var result int = len(strings.TrimSpace(str))
fmt.Println("Length of String:", result)
}
输出
The given string is: Prevention is better than cure
Length of String: 30
示例2
在这个示例中,我们将使用Go语言程序通过使用utf包来找到字符串的长度。
package main
import (
"fmt"
"unicode/utf8"
)
func main() {
// Initializing string
str := "The way to get started is to quit talking and begin doing"
fmt.Println("The given string is:", str)
var result int = utf8.RuneCountInString(str)
fmt.Println("Length of String:", result)
}
输出
The given string is: The way to get started is to quit talking and begin doing
Length of String: 57
示例3
在这个示例中,我们使用了字节包(bytes package)来编写一个Go语言程序,以找到字符串的长度。
package main
import (
"bytes"
"fmt"
)
func main() {
// Initializing string
str := "The greatest glory in living lies not in never falling, but in rising every time we fall"
fmt.Println("The given string is:", str)
var result int = bytes.Count([]byte(str), nil)
fmt.Println("Length of String:", result)
}
输出
The given string is: The greatest glory in living lies not in never falling, but in rising every time we fall
Length of String: 89
结论
我们成功编译并执行了一个使用Go语言编写的程序,用于计算字符串的长度,并提供了示例。