Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
Trong Go, mảng được sử dụng để lưu trữ một tập hợp dữ liệu có độ dài cố định cùng loại. Để quản lý dữ liệu này một cách hiệu quả, bạn thường cần truyền mảng cho các hàm. Ở bài viết này, chúng ta sẽ tìm hiểu cách truyền mảng cho hàm trong Golang.
Ví dụ:
package main import "fmt" // Hàm tính trung bình của một mảng func calculateAverage(arr [6]int, size int) int { var sum int for _, value := range arr { sum += value } return sum / size } func main() { scores := [6]int{67, 59, 29, 35, 4, 34} average := calculateAverage(scores, len(scores)) fmt.Printf("%d\n", average) }
Kết quả:
38
Trong ví dụ này, hàm calculateAverage() lấy một mảng số nguyên và kích thước của nó làm đối số. Nó tính toán giá trị trung bình của các phần tử mảng và trả về giá trị đó. Hàm chính khởi tạo một mảng có tên là scores và gọi hàm tính giá trị trung bình.
Các điểm chính:
Khai báo mảng:
Sử dụng cú pháp var arrayName [size]type để khai báo một mảng.
var numbers [5]int // Một mảng gồm 5 số nguyên
Truyền mảng:
Trong Go, mảng được truyền cho hàm theo giá trị, nghĩa là hàm nhận được một bản sao của mảng. Những thay đổi được thực hiện bên trong hàm không ảnh hưởng đến mảng gốc.
Con trỏ để sửa đổi mảng gốc:
Nếu muốn sửa đổi mảng gốc, bạn nên truyền một con trỏ đến mảng đó.
func modifyArray(arr *[5]int) { for i := range arr { arr[i] += 10 // Tăng mỗi phần tử lên 10 } }
Ví dụ:
package main import "fmt" // Hàm tăng mỗi phần tử của mảng này func incrementArray(arr *[5]int) { for i := range arr { arr[i]++ // Increment each element by 1 } } func main() { values := [5]int{1, 2, 3, 4, 5} // Chỉnh sửa mảng incrementArray(&values) fmt.Println("Incremented array:", values) }
Kết quả:
Mảng tăng dần: [2 3 4 5 6]
Truyền mảng cho các hàm trong Go cho phép quản lý dữ liệu hiệu quả. Hiểu cách truyền và sửa đổi mảng sẽ giúp bạn viết các chương trình Go hiệu quả.
Nguồn tin: Quantrimang.com:
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn