Go语言程序:查找字符串长度


Go语言中的字符串是什么?

在Go语言中,字符串是一系列字符。它是一种不可变的数据类型,这意味着一旦创建了一个字符串,就不能修改它。字符串用双引号("")括起来,可以包含任何字母、数字和符号的组合。它们通常用于存储文本,并且经常用作程序的输入和输出。

方法一:使用外部函数

在此方法中,我们创建的函数将接受需要计算长度的字符串作为参数,并以整数格式返回函数的最终长度。

算法

  • 步骤1 − 首先,我们需要导入fmt包。

  • 步骤2 − 然后,我们需要创建一个名为stringLength()的函数。

  • 步骤3 − 创建一个for循环来迭代字符串的字符,并在每次迭代中递增length变量。

  • 步骤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

方法二:使用内部包

在此方法中,我们将编写一个Go语言程序,使用内部包来查找字符串的长度。

语法

func RuneCountInString(s string) (n int)

RuneCountInString()函数位于utf-8包中,用于查找字符串的长度。此函数接受需要计算长度的字符串作为函数参数,并返回其长度的整数。

func TrimSpace(str string) string

trimSpace()函数位于strings包中,用于删除字符串字符之间的空格。该函数接受所需的字符串作为参数,并返回删除单词之间的空格后获得的最终字符串。

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

使用strings包查找字符串长度的Go语言示例

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包来编写一个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语言程序来查找字符串的长度,并附带示例。

更新于:2023年2月13日

2K+ 浏览量

开启您的职业生涯

通过完成课程获得认证

开始
广告
© . All rights reserved.