Go语言程序:访问修饰符的使用
在Go语言中,存在两种类型的访问修饰符:导出型和未导出型。从其所属包中导出的标识符称为导出型**标识符**。它们总是以大写字母开头。这些标识符仅在其定义的包中有效。未从任何包中导出的标识符称为未导出型标识符,它们以小写字母编写。
语法
func len(v Type) int
len()函数用于获取任何参数的长度。它接受一个参数作为我们想要查找其长度的数据类型变量,并返回一个整数,表示该变量的长度。
func ToUpper(str string) string
**ToUpper()**函数位于strings包中,用于将给定的字符串转换为大写。该函数接受给定的字符串作为参数,并在将其转换为大写后返回最终字符串。
方法一:使用导出型标识符
现在让我们考虑一个示例,我们将尝试使用导出型函数的概念将字符串数组转换为大写。
算法
**步骤1** − 首先,我们需要导入所需的包,例如fmt和strings。
**步骤2** − 然后,调用main()函数。
**步骤3** − 初始化一个字符串数组并向其中存储字符串值。接下来,在屏幕上打印该数组。
**步骤4** − 现在启动一个for循环来遍历数组,并使用string.ToUpper()函数将数组的每个元素转换为大写,并将结果数组存储在results中。
**步骤5** − 现在,使用fmt.Println()函数在屏幕上打印结果。
示例
以下示例将解释如何在Go语言中使用导出型标识符来访问修饰符。
package main import ( "fmt" "strings" ) func main() { // creating an array of strings and assigning values to it arr := []string{"apple", "banana", "fruits"} fmt.Println("Successfully converted array of strings to upper case using Exported method ToUpper() defined in strings package") fmt.Println("The resultant string is:") for x := 0; x < len(arr); x++ { // calling the exported method ToUpper() results := strings.ToUpper(arr[x]) fmt.Println(results) } }
输出
Successfully converted array of strings to upper case using Exported method ToUpper() defined in strings package The resultant string is: APPLE BANANA FRUITS
方法二:使用未导出型标识符
现在让我们考虑一个示例,我们将尝试使用未导出型函数的概念来查找整数数组的总和。
算法
**步骤1** − 首先,我们需要导入fmt包。
**步骤2** − 初始化并定义一个名为addition()的方法来查找整数数组的总和。此函数将整数数组作为参数,并计算其总和。
**步骤3** − 它使用for循环迭代数组的每个元素并查找其总和,并将总和存储在一个名为s的新声明的变量中。然后,该函数返回结果。
**步骤4** − 现在,调用main()函数。
**步骤5** − 初始化一个整数数组并向其中存储值。然后使用fmt.Println()函数在屏幕上打印该数组。
**步骤6** − 现在通过将数组作为参数传递给它来调用addition()函数。请注意,在调用addition函数时,第一个字母是小写的,这表明该函数是未导出的,并且在main函数中定义。
**步骤7** − 现在,将结果存储在一个不同的变量中并在屏幕上打印它。
示例
以下示例将解释如何在Go语言中使用未导出型标识符来访问修饰符。
package main import "fmt" func addition(val []int) int { s := 0 for x := range val { s += val[x] } return s } // Calling the main function func main() { // defining an array of integers and storing values in it arr := []int{50, 29, 36, 55, 87, 95} fmt.Println("The given array of integers is:", arr) result := addition(arr) fmt.Println() fmt.Println("Succesfully found the sum of array of integers using UnExported method addition()") fmt.Println("The resultant sum is:") fmt.Println(result) }
输出
The given array of integers is: [50 29 36 55 87 95] Succesfully found the sum of array of integers using UnExported method addition() The resultant sum is: 352
结论
我们已经成功编译并执行了一个Go语言程序来展示访问修饰符以及示例。在这里,我们使用了Go语言中的两种类型的访问修饰符:导出型和未导出型。