Golang程序 检查数组是否包含某个给定值

Golang程序 检查数组是否包含某个给定值

在本教程中,我们将学习如何检查一个给定值是否存在于Go-lang数组中。我们将使用2种方法来实现这一目标。

方法1:直接在主函数中使用for循环

我们将使用for循环来遍历Golang中的数组元素,并使用平等运算符来检查数值是否相等。如果数值匹配,我们就可以停止迭代,并说给定的数值存在于数组中。

方法2:使用函数

Golang没有任何预先定义的库函数方法,所以我们需要创建自己的函数。

例1:Golang程序检查一个数组是否包含一个特定值

语法

var array_name [length] Type

在Golang中,要初始化一个数组,我们需要指定三件事。首先是数组的名称,其次是它的大小,然后是我们希望存储在其中的数值的数据类型。

例如,var number[10] int – 这将初始化一个名为number的整数数据类型的数组,并将在连续的内存位置存储10个内存值。

算法

  • 第1步– 导入软件包 fmt。

  • 第2步 – 启动函数 main()。

  • 第3步 – 声明并初始化一个数组,一个数据类型为 int 的变量和一个布尔变量。

  • 第4步 – 使用for循环对数组进行迭代。

  • 第5步 – 使用 fmt.Printf() 在屏幕上打印结果。

例子

// GOLANG PROGRAM TO CHECK IF AN ARRAY CONTAINS A GIVEN VALUE
package main
import "fmt"

// fmt package provides the function to print anything
func main() {

   // initialize an array and store value in it
   array := [5]int {1, 2, 3, 4, 5}

   // initialize a variable of data type int
   var element int = 4
   fmt.Println("The element to check = ",element)

   // initialize a datatype of Boolean and define it to false
   var result bool = false

   // iterate over the array using for loop and break if values match
   for i := 0;
   i < len(array);
   i++ {
      // checking if the array contains the given value
      if array[i] == element {
      // changing the boolean variable
            result = true
            break
         }
      }

      // printing the final result
      if result {
         fmt.Println("Array", array, "Contains the given Value", element)
      } else {
         fmt.Println("Array", array, "does not Contains the given Value", element)
      }
   }

输出

The element to check = 4 
Array [1 2 3 4 5] Contains the given Value 4

法规的描述

1.首先,我们导入允许我们打印任何东西的软件包fmt。

2.然后我们启动 main() 函数。

3.初始化一个数据类型为int的数组并为其赋值。

4.同时初始化一个变量来存储我们希望检查的整数值。

5.初始化一个布尔变量,最初在其中存储false。

6.遍历数组并使用if条件来检查它是否包含上述初始化的变量。

7.如果它包含该变量,则翻转该布尔变量并中断循环。

8.在屏幕上打印出结果。

例2:使用函数检查数组是否包含特定元素的Golang程序

语法

func function_name([parameters]) [return_types]{
   Body of the function
}

算法

  • 第1步– 导入软件包 fmt

  • 第2步– 创建函数 isAvailable()。

  • 第3步– 启动函数 main()。

  • 第4步– 初始化字符串数组

  • 第5步–调用函数 isAvailable()。

  • 第6步– 使用 fmt.Printf() 在屏幕上打印结果。

例子

package main
import "fmt"

// defining the function with a parameter of string
// type and have a return type bool
func isAvailable(alpha []string, str string) bool {

   // iterate using the for loop
   for i := 0;
   i < len(alpha);
   i++ {
      // check      
      if alpha[i] == str {
         // return true
         return true
      }
   }
   return false
}
// Start the function main()
func main() {
   // Declare and initialize string datatype
   alpha := []string {"Akshay", "Emma", "David", "Akhil"}
   fmt.Println("Given List = ",alpha)

   // initializing a variable of data type string
   var toCheck string = "Akhil"
   fmt.Println("Value to search = ",toCheck)

   // calling the isAvailable() function
   result := isAvailable(alpha, toCheck)
   if result {
      fmt.Println(toCheck, "is present in the array of strings", alpha)
   }
}

输出

Given List = [Akshay Emma David Akhil] 
Value to search = Akhil 
Akhil is present in the array of strings [Akshay Emma David Akhil]

法规的描述

1.首先,我们要导入fmt包,它允许我们在屏幕上打印任何东西。

2.然后,我们必须创建一个函数,来处理我们的逻辑。

3.我们创建了 isAvailable() 函数,它需要两个参数,一个是字符串数组,另一个是我们希望检查的字符串。该函数返回一个布尔值,即真或假。

4.在这个循环中,我们使用for循环来迭代数组。

5.然后我们使用if条件来检查可用的字符串是否存在于数组中。

6.如果它存在,则返回true。否则该函数将返回false。

7.启动 main() 函数。

8.初始化一个字符串数组并为其赋值。

9.初始化一个数据类型为字符串的 toCheck 变量,它将包含要检查的值。

10.调用 isAvailable() 函数,并将字符串数组和 toCheck 变量作为参数传递给它。

11.将该函数返回的值存储在一个单独的变量中。

12.在屏幕上打印结果。

总结

我们已经成功地编译并执行了Golang程序代码来检查元素是否存在于数组中。我们使用了2种不同的方法来说明这一点。首先是直接方法,我们用for循环来迭代数组。

在第二种方法中,我们创建了一个函数并从主函数中调用它来检查。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程