Phước
2023-09-15 14:30:19
Để thêm giá trị vào một mảng (array) có dạng struct, bạn có thể làm như sau:
1. Định nghĩa struct của bạn:
type MyStruct struct {
Key string
Value int
}
2. Tạo một mảng của struct:
var myArray []MyStruct
3. Tạo 1 vòng lặp và trong vòng lặp bạn có thể tạo một thể hiện của struct, đặt giá trị và sau đó thêm nó vào mảng:
for i := 0; i < 5; i++ { // Ví dụ vòng lặp 5 lần
// Tạo một data của struct
newItem := MyStruct{
Key: "Key" + strconv.Itoa(i), // Đặt key dựa trên i
Value: i * 10, // Đặt giá trị dựa trên i
}
// Thêm data vào mảng
myArray = append(myArray, newItem)
}
Sau khi hoàn thành vòng lặp, mảng myArray
sẽ chứa tất cả các giá trị struct mà bạn đã tạo trong vòng lặp, và bạn có thể truy cập chúng theo index hoặc duyệt qua chúng theo cách thông thường.
Đây là đầy đủ mã:
package main
import (
"fmt"
"strconv"
)
type MyStruct struct {
Key string
Value int
}
func main() {
var myArray []MyStruct
for i := 0; i < 5; i++ {
newItem := MyStruct{
Key: "Key" + strconv.Itoa(i),
Value: i * 10,
}
myArray = append(myArray, newItem)
}
// In ra mảng đã tạo
for _, item := range myArray {
fmt.Printf("Key: %s, Value: %d\n", item.Key, item.Value)
}
}
Kết quả sẽ in ra:
Key: Key0, Value: 0
Key: Key1, Value: 10
Key: Key2, Value: 20
Key: Key3, Value: 30
Key: Key4, Value: 40
Mảng myArray
bây giờ chứa 5 phần tử struct với các giá trị key và value tương ứng.