如何在 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 語言的資訊,您可以參考 教程。

更新於: 2022年8月26日

3K+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

立即開始
廣告