如何在 Go 语言中交换两个数字?
在本教程中,我们将讨论如何在 Go 语言中交换两个数字。我们将介绍两种方法:第一种是在函数内部交换两个数字,第二种是创建一个单独的函数。
在函数内部交换两个数字
算法
步骤 1 − 定义我们要交换的变量。
步骤 2 − 初始化变量。
步骤 3 − 在函数内部交换这两个变量。
步骤 4 − 交换后打印变量。
示例
package main // fmt package provides the function to print anything import "fmt" func main() { // define the variables we want to Swap var number1, number2, number3 int // initializing the variables number1 = 45 number2 = 63 // printing the numbers before swapping fmt.Println("Numbers before swapping: \n Number 1 =", number1,"\n Number 2 =", number2) // swapping the numbers number3 = number1 number1 = number2 number2 = number3 // printing the numbers after swapping fmt.Println("Numbers after swapping:\n Number 1 =", number1,"\n Number 2 =", number2, "\n(Swap within the function)") }
在上面的代码中,我们首先声明了两个整型变量,然后初始化了这些变量。在下一步中,我们使用第三个变量在函数内部交换了这两个整型变量。最后,我们打印了交换后的整型变量。
输出
Numbers before swapping: Number 1 = 45 Number 2 = 63 Numbers after swapping: Number 1 = 63 Number 2 = 45 (within the function)
使用不同的函数交换两个数字
算法
步骤 1 − 定义我们要添加的变量。
步骤 2 − 初始化变量。
步骤 3 − 使用 swapNumbers() 函数交换这两个变量。
步骤 4 − 交换后打印变量
示例
package main // fmt package provides the function to print anything import "fmt" func swapNumbers(number1, number2 *int) { var number3 int // swapping the numbers number3 = *number1 *number1 = *number2 *number2 = number3 } func main() { // define the variables we want to add var number1, number2 int // initializing the variables number1 = 45 number2 = 63 // printing the numbers before swapping fmt.Println("Numbers before swapping: \n Number 1 =", number1,"\n Number 2 =", number2) // swapping the numbers swapNumbers(&number1, &number2) // printing the numbers after swapping fmt.Println("Numbers after swapping:\n Number 1 =", number1,"\n Number 2 =", number2, "\n(Swap using different function)") }
在上面的代码中,我们首先声明了两个整型变量,然后初始化了这些变量。在下一步中,我们使用 **swapNumber()** 函数交换了这两个整型变量。最后,我们打印了交换后的整型变量。
语法
number3 = *number1 *number1 = *number2 *number2 = number3
我们以地址传递的方式传递参数,以便值会在全局范围内被交换,因此我们在 number1 和 number2 前面加上了 *。在上面的代码中,我们使用了第三个变量来进行交换。将 number1 存储在 number3 中,然后将 number2 存储在 number1 中,最后将 number3 存储在 number1 中。
输出
Numbers before swapping: Number 1 = 45 Number 2 = 63 Numbers after swapping: Number 1 = 63 Number 2 = 45 (within the function)
用一行代码交换两个数字
Go 语言支持一种语法,我们可以用它在一行代码中交换两个变量。
语法
Variable1, variable2 = variable2, variable1
示例
package main // fmt package provides the function to print anything import "fmt" func main() { // define the variables we want to add var number1, number2 int // initializing the variables number1 = 45 number2 = 63 // printing the numbers before swapping fmt.Println("Numbers before swapping: \n Number 1 =", number1,"\n Number 2 =", number2) // swapping the numbers in one line number1, number2 = number2, number1 // printing the numbers after swapping fmt.Println("Numbers after swapping:\n Number 1 =", number1,"\n Number 2 =", number2, "\n(Swap using a one-liner syntax)") }
在上面的代码中,我们首先声明了两个整型变量,然后初始化了这些变量。在下一步中,我们使用 Go 语言支持的一行语法交换了这两个整型变量。最后,我们打印了交换后的整型变量
语法
number1, number2 = number2, number1 –
由于 Go 语言支持同时初始化多个变量,因此在这一行中,我们用 number2 初始化 number1,用 number1 初始化 number2。
输出
Numbers before swapping: Number 1 = 45 Number 2 = 63 Numbers after swapping: Number 1 = 63 Number 2 = 45 (Swap using a one-liner syntax)
通过这些方法,我们可以交换 Go 语言中的两个数字。单独的函数或单行代码符合良好的编程规范。要了解更多关于 Go 语言的信息,您可以参考 此 教程。