Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
Trong Golang, mảng là một chuỗi có độ dài cố định chứa các phần tử của một kiểu cụ thể. Không giống như các lát cắt, mảng có kích thước không đổi, được xác định khi mảng được khai báo. Sao chép một mảng sang mảng khác rất đơn giản nhưng yêu cầu cả hai mảng phải có cùng độ dài và kiểu.

Ví dụ:
package main
import "fmt"
// Mảng cơ bản được sử dụng trong tất cả ví dụ
var source = [5]int{10, 20, 30, 40, 50}
func main() {
fmt.Println("Source Array:", source)
}
Cú pháp:
for i := 0; i < len(source); i++ {
destination[i] = source[i]
}
Go không cung cấp hàm copy() tích hợp cho mảng, do đó cách phổ biến nhất để sao chép một mảng là lặp qua từng phần tử và gán phần tử đó theo cách thủ công.
Cú pháp
for i := 0; i < len(source); i++ {
destination[i] = source[i]
}
Ví dụ:
package main
import "fmt"
var source = [5]int{10, 20, 30, 40, 50}
func main() {
// Tạo mảng đích có cùng kích thước như mảng nguồn
var destination [5]int
// Tự tay sao chép từng phần tử
for i := 0; i < len(source); i++ {
destination[i] = source[i]
}
fmt.Println("Source:", source)
fmt.Println("Destination:", destination)
}
Kết quả:
Source: [10 20 30 40 50] Destination: [10 20 30 40 50]
Bạn có thể gán một mảng cho mảng khác nếu chúng có cùng kiểu và độ dài. Phương pháp này không hoạt động với các slice.
Cú pháp
destination = source
Ví dụ
package main
import "fmt"
var source = [5]int{10, 20, 30, 40, 50}
func main() {
// Sao chép bằng cách gán trực tiếp
var destination [5]int = source
fmt.Println("Source:", source)
fmt.Println("Destination:", destination)
}
Kết quả
Source: [10 20 30 40 50] Destination: [10 20 30 40 50]
Nếu đang làm việc với các mảng lớn và muốn tránh sao chép, bạn có thể sử dụng con trỏ để tham chiếu đến mảng nguồn. Điều này sẽ không tạo ra một mảng mới nhưng sẽ trỏ đến vị trí bộ nhớ của mảng hiện có.
Cú pháp
destination = &source
Ví dụ
package main
import "fmt"
var source = [5]int{10, 20, 30, 40, 50}
func main() {
// Tạo một con trỏ tới mảng nguồn
var destination *[5]int = &source
fmt.Println("Source:", source)
fmt.Println("Destination Array via pointer:", *destination)
}
Kết quả
Source: [10 20 30 40 50] Destination Array via pointer: [10 20 30 40 50]
Lưu ý:
Nguồn tin: Quantrimang.com:
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
Karaoke Người Đó Tôi Đây Tình Đâu(Midi)
Chuyển tin nhắn Messenger thành bài hát trong nháy mắt
Cách xây dựng game nhiều người chơi với Claude Opus 5.5
Cách xem thời tiết trong ChatGPT với AccuWeather để lên kế hoạch
Karaoke Lạnh (Midi)
Cách kết nối ElevenLabs AI agent với Exa
Thiết lập cách ChatGPT thông báo cho bạn khi có công việc cần chú ý
TOP phần mềm OCR scan tài liệu có tích hợp AI tốt nhất
6 trang web tạo mật khẩu ngẫu nhiên an toàn đáng tin cậy
TOP nền tảng xây dựng công cụ nội bộ có tích hợp AI
TOP phần mềm AI bảo mật Internet tốt nhất hiện nay
Biến các ý tưởng thành giải thích trực quan, tương tác trong ChatGPT
TOP tiện ích mở rộng AI cho VS Code tốt nhất
Cách tạo website Portfolio miễn phí bằng ChatGPT
6 lựa chọn thay thế Visual Studio Code tốt nhất có tích hợp AI
Tạo form hỏi đáp tương tác trong vài phút và prompt chỉnh sửa
Hướng dẫn sử dụng Google Slides trong Claude
Hướng dẫn sử dụng Wolfram trong ChatGPT giải toán nâng cao
15 prompt AI thú vị cho ngày lễ Halloween
Hoàn thiện một thiết kế thực tế với ChatGPT + Canva
Hướng dẫn cài đặt và sử dụng n8n trên Windows 11
Cách lập trình chuyên nghiệp hơn, dễ dàng hơn với tính năng Tệp trên Grok
Công thức tính diện tích hình Elip
Hướng dẫn ngắt kết nối ứng dụng trên ChatGPT
Hướng dẫn tạo đoạn hội thoại cho topic trên Twee
Bức tranh tổng quan về hỗ trợ khách hàng tích hợp AI
Cách sửa lỗi There Are Currently No Power Options Available Windows
Claude Code thực sự có giá bao nhiêu?
Hướng dẫn 8 cách mở bàn phím ảo trên Windows 10
5 tài liệu hay nhất giúp bạn làm chủ Small Language Model (SLM) năm 2026