Adakah Penting Apabila Mencipta Peta?
Apabila membuat peta dalam Go, pembangun mempunyai dua pilihan:
var m = map[string]int{}
var m = make(map[string]int)
Walaupun yang pertama mungkin kelihatan seperti jalan pintas untuk permulaan medan yang lebih pantas, kedua-dua pilihan mempunyai ciri yang halus perbezaan.
Map Literals vs. make
Bentuk pertama ialah kes khas peta literal, yang membolehkan penciptaan peta bukan kosong dengan kunci khusus- pasangan nilai. Contohnya:
m := map[bool]string{false: "FALSE", true: "TRUE"}
Sebaliknya, bentuk kedua menggunakan make sentiasa mencipta peta kosong. Ia bersamaan dengan literal peta tanpa nilai awal, seperti:
m := map[string]int{}
Kapasiti Permulaan
Perbezaan utama antara kedua-dua pendekatan terletak pada keupayaan untuk menentukan kapasiti awal. make membolehkan anda memperuntukkan ruang untuk bilangan item tertentu, walaupun ia tidak diberikan pada mulanya. Ini boleh membantu mengurangkan peruntukan masa hadapan jika anda menjangkakan peta berkembang dengan ketara. Contohnya:
m := make(map[string]int, 50)
Ini menghasilkan peta dengan ruang yang mencukupi untuk 50 item, berpotensi mengurangkan peruntukan apabila peta berkembang.
Amalan Terbaik
Secara umumnya, pilihan antara dua kaedah bergantung kepada keadaan. Jika anda mencipta peta kosong yang prestasinya tidak kritikal, mana-mana pilihan sudah memadai. Walau bagaimanapun, jika anda menjangkakan peta yang besar atau ingin menetapkan kapasiti awal, menggunakan make adalah disyorkan.
Atas ialah kandungan terperinci Adakah `peta` atau `membuat` Penting Semasa Mencipta Peta dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!