Golang中的資料類型

資料型別指定有效的Golang變數可以包含什麼類型的資料。 Go語言中,類型分為以下四類:

Golang中的資料類型

  • 基本類型:數字、字串和布林值
  • 聚合類型:數組和結構
  • 引用類型:指標、切片、映射、函數和通道
  • 介面類型

這裡我們將討論 Go 語言中的基本資料型別。它們分為三個子類別:

  • 數位
  • 布林值

Golang中的常見資料類型

Golang 中的數字

在Go語言中,數字分為三個子類:

整數:在 Go 語言中,有符號和無符號整數都有四種不同的大小,如下表所示。有符號整數用 表示int,無符號整數用 表示uint

可能的算術運算:加法、減法、乘法、除法、餘數

資料類型

描述

int8 8位有符號整數
int16 16位有符號整數
int32 32位有符號整數
int64 64位有符號整數
uint8 8位元無符號整數
uint16 無符號整數1 6位
uint32 32位元無符號整數
uint64 64位元無符號整數
整數 無符號數和有符號數的大小相同,均為 32 位元或 64 位元
單位 無符號數和有符號數的大小相同,均為 32 位元或 64 位元
符文 這是 int32 的同義詞,也代表 Unicode 碼點。
位元組 這是 uint8 的同義詞。
uintptr 這是一個無符號整數類型。它的寬度未定義,但它可以包含指標值的所有位元。

例如:

// Chương trình Go sử dụng số nguyên
package main 
import "fmt"
		
func main() {
	
	// Dùng 8-bit unsigned int 
	var X uint8 = 225
	fmt.Println(X, X-3)
	
	// Dùng 16-bit signed int 
	var Y int16 = 32767
	fmt.Println(Y+2, Y-2) 
}

結果:

225 222
-32767 32765

算術運算範例:

// Các phép tính số học có thể có đối với số nguyên
// Tác giả : Chhanda Saha

package main

import "fmt"

func main() {

	var x int16 = 170
	var y int16 = 83
	//Cộng
	fmt.Printf(" addition : %d + %d = %d\n ", x, y, x+y)
	//Trừ
	fmt.Printf("subtraction : %d - %d = %d\n", x, y, x-y)
	//Nhân
	fmt.Printf(" multiplication : %d * %d = %d\n", x, y, x*y)
	//Chia
	fmt.Printf(" division : %d / %d = %d\n", x, y, x/y)
	//Mô đun
	fmt.Printf(" remainder : %d %% %d = %d\n", x, y, x%y)
}

結果:

Cộng :  170 + 83 = 253
Trừ : 170 - 83 = 87
Nhân : 170 * 83 = 14110
Chia : 170 / 83 = 2
Số dư : 170 % 83 = 4 
  • 浮點數:在Go語言中,浮點數分為兩種類型,如下表所示。
    • 算術運算可以是:加法、減法、乘法、除法。
    • 有三種字體:
      • 小數(3.15)
      • 功率(12e18 或 3e10)
      • 混合(13.16e12)
資料類型

描述

float32 32 位元 IEEE 754 浮點數
float64 64 位元 IEEE 754 浮點數

例如:

//Minh họa chương trình Go dùng số dấu chấm động
package main 
import "fmt"
		
func main() {
	a := 20.45
	b := 34.89
	
	// Phép trừ hai số dấu chấm động
	c := b-a
	
	// Hiện kết quả
	fmt.Printf("Result is: %f", c)
	
	// Hiện kiểu biến C
	fmt.Printf("\nThe type of c is : %T", c) 
}

結果:

Kết quả: 14.440000
Kiểu của C là : float64

浮點數算術運算範例:

// Các phép toán số học có thể có cho số thực
// Tác giả : Chhanda Saha
package main

import "fmt"

func main() {
	var x float32 = 5.00
	var y float32 = 2.25
	//Phép cộng
	fmt.Printf("addition : %g + %g = %g\n ", x, y, x+y)
	//Phép trừ
	fmt.Printf("subtraction : %g - %g = %g\n", x, y, x-y)
	//Phép nhân
	fmt.Printf("multiplication : %g * %g = %g\n", x, y, x*y)
	//Phép chia
	fmt.Printf("division : %g / %g = %g\n", x, y, x/y)

}

結果:

Phép cộng :  5 + 2.25 = 7.25
Phép trừ : 5 - 2.25 = 2.75
Phép nhân : 5 * 2.25 = 11.25
Phép chia : 5 / 2.25 = 2.2222223
  • 複數:複數分為兩部分,如下表所示。float32並且float64也是這些複數的一部分。積分函數從其虛部和實部產生一個複數,然後積分函數提取這些部分。
    • 複數中有幾個內建函數:
      • 複數-透過兩個浮點數創建複數。
      • real() – 將輸入複數的實部作為浮點數取得。
      • imag() – 取得輸入複數的虛部作為浮點數
資料類型

描述

複雜64 複數包含 float32 作為實部和虛部。
複雜128 複數包含 float64 作為實部和虛部。

例如:

// Chương trình Go dùng số phức
package main
import "fmt"

func main() {
	
var a complex128 = complex(6, 2)
var b complex64 = complex(9, 2)
fmt.Println(a)
fmt.Println(b)
	
// Hiện kiểu
fmt.Printf("The type of a is %T and "+
			"the type of b is %T", a, b)
}

結果:

(6+2i)
(9+2i)
Kiểu của a là complex128, kiểu của b là complex64

內建函數範例:

// Các hàm tích hợp là số phức
// Tác giả : Chhanda Saha
package main

import "fmt"

func main() {
	comp1 := complex(10, 11)
	// cú pháp init số phức
	comp2 := 13 + 33i
	fmt.Println("Complex number 1 is :", comp1)
	fmt.Println("Complex number 1 is :", comp2)
	// lấy phần real
	realNum := real(comp1)
	fmt.Println("Real part of complex number 1:", realNum)
	// lấy phần hình ảnh
	imaginary := imag(comp2)
	fmt.Println("Imaginary part of complex number 2:", imaginary)

}

結果:

Số phức 1 là: (10+11i)
Số phức 1 là: (13+33i)
Phần thực của số phức 1: 10
Phần ảo của số phức 2: 33

布林值

布林資料型別僅表示一位訊息,即真或假。 boolean 類型的值不能隱含或明確地轉換為任何其他類型。

例如:

//Minh họa chương trình dùng boolean
package main
import "fmt"

func main() {
	
	// Các biến
str1 := "Quantrimang"
str2:= "quantrimang"
str3:= "Quantrimang"
result1:= str1 == str2
result2:= str1 == str3
	
// Hiện kết quả
fmt.Println( result1)
fmt.Println( result2)
	
// Hiện kiểu của result1 và result2
fmt.Printf("Kiểu của result1 là %T và "+
				"kiểu của result2 là %T",
							result1, result2)
	
}

結果:

false
true
Kiểu của result1 là bool và kiểu của result2 là bool

字串資料類型表示 Unicode 碼位序列。換句話說,我們可以說字串是不可變的位元組序列,這意味著一旦創建了字串,就無法更改它。字串可以包含任意數據,包括人類可讀形式的零值位元組。可以使用加法運算子 (+) 連接字串。

例如:

// Chương trình Go dùng chuỗi
package main
import "fmt"

func main() {
	
	// Biến str chứa chuỗi
str := "Quantrimang"
	
// Hiện độ dài của chuỗi
fmt.Printf("Length of the string is:%d",
								len(str))
	
// Hiện chuỗi
fmt.Printf("\nString is: %s", str)
	
// Hiện kiểu biến str 
fmt.Printf("\nType of str is: %T", str)
}

結果:

Chiều dài của chuỗi là: 13
Chuỗi là: Quantrimang
Kiểu của chuỗi là: chuỗi

字串連接的範例:

// Nối chuỗi
// Tác giả : Chhanda Saha
package main

import "fmt"

func main() {
	var str1 string = "STRING_"
	var str2 string = "Concatenation"

	// Nối chuỗi bằng toán tử + 
	fmt.Println("New string : ", str1+str2)

}

結果:

New string :  STRING_Concatenation

留下評論

如何修復 Microsoft Teams 錯誤代碼 2603 (2026)

如何修復 Microsoft Teams 錯誤代碼 2603 (2026)

遇到 Microsoft Teams 錯誤代碼 2603 而煩惱?我們的逐步指南可協助您快速解決問題,修復最新 2026 更新中的安裝失敗、當機等問題。適用於所有用戶!

如何修復 Microsoft Teams 錯誤 K 安全

如何修復 Microsoft Teams 錯誤 K 安全

遇到 Microsoft Teams 安全錯誤 K 時遇到問題?按照我們的逐步指南即可快速解決—無需任何技術知識。立即恢復流暢協作!

解決 Microsoft Teams 錯誤 N 網路

解決 Microsoft Teams 錯誤 N 網路

還在為 Microsoft Teams 的「錯誤 N」網路問題苦惱嗎?取得解決 Microsoft Teams「錯誤 N」網路問題的逐步指南,從快速重新啟動到進階故障排除,應有盡有。立即恢復流暢的通話和會議體驗!

一步一步教你如何在會議開始前建立分組討論室

一步一步教你如何在會議開始前建立分組討論室

透過這份詳盡的逐步指南,即可在 Zoom 會議開始前輕鬆建立分組討論室,實現無縫協作。預先分配與會者,最大程度提升參與。本指南是教育工作者、團隊和領導者的理想選擇。

解決 Microsoft Teams 中「Teams 資料夾在哪裡」的錯誤

解決 Microsoft Teams 中「Teams 資料夾在哪裡」的錯誤

還在為 Microsoft Teams 中令人抓狂的「Teams 資料夾在哪裡」錯誤而煩惱嗎?我們提供經過驗證的逐步故障排除方法,協助您快速解決問題,恢復流暢的團隊合作。包含最新方法!

解決 Microsoft Teams Mac 版錯誤鑰匙圈問題

解決 Microsoft Teams Mac 版錯誤鑰匙圈問題

還在為 Microsoft Teams Mac 版鑰匙圈錯誤而煩惱嗎?我們提供經過驗證的 macOS 逐步故障排除方案,協助您恢復流暢協作。快速解決方案就在眼前!

如何解決 Microsoft Teams 麥克風聲音模糊或無聲音的問題

如何解決 Microsoft Teams 麥克風聲音模糊或無聲音的問題

還在為 Microsoft Teams 麥克風聲音模糊或無聲而煩惱嗎?了解如何透過快速有效的步驟解決 Microsoft Teams 麥克風問題。清晰的音訊體驗,等你來體驗!

解決公共 Wi-Fi 上的 Microsoft Teams 網路錯誤

解決公共 Wi-Fi 上的 Microsoft Teams 網路錯誤

在公共 Wi-Fi 環境下遇到 Microsoft Teams 網路錯誤?立即取得 VPN 調整、連接埠檢查和快取清除等快速修復方法,恢復通話和會議的流暢運作。逐步指南助您快速解決問題。

透過直接連結解決 Microsoft Teams 加入會議錯誤

透過直接連結解決 Microsoft Teams 加入會議錯誤

遇到 Microsoft Teams 加入會議錯誤?點擊連結查看已驗證的解決方法。快速修復,輕鬆加入會議—無需任何技術技能!

如何運用 Microsoft Teams Copilot 實現 AI 賦能的生產力

如何運用 Microsoft Teams Copilot 實現 AI 賦能的生產力

了解如何使用 Microsoft Teams Copilot 提升 AI 賦能的生產力。逐步指南、關鍵功能和技巧,幫助您輕鬆革新會議、聊天和任務。立即開啟更聰明的協作!