73 lines
2.2 KiB
Markdown
73 lines
2.2 KiB
Markdown
---
|
||
title: Go Maps
|
||
localeTitle: الذهاب خرائط
|
||
---
|
||
## الذهاب خرائط
|
||
|
||
خريطة تسمى " _قاموس"_ بلغات أخرى ، ومفاتيح "خرائط" للقيم. يتم الإعلان عن خريطة مثل هذا:
|
||
|
||
`var m map[Key]Value
|
||
`
|
||
|
||
لا تحتوي هذه الخريطة على مفاتيح ولا يمكن إضافة مفاتيح إليها. لإنشاء خريطة ، استخدم وظيفة `make` :
|
||
|
||
`m = make(map[Key]Value)
|
||
`
|
||
|
||
يمكن استخدام أي شيء كمفتاح أو كقيمة.
|
||
|
||
### تعديل الخرائط
|
||
|
||
في ما يلي بعض الإجراءات الشائعة في الخرائط.
|
||
|
||
#### إدخال / تغيير العناصر
|
||
|
||
إنشاء أو تغيير عنصر `foo` في الخريطة `m` :
|
||
|
||
`m["foo"] = bar
|
||
`
|
||
|
||
#### الحصول على العناصر
|
||
|
||
احصل على عنصر مع مفتاح `foo` في الخريطة `m` :
|
||
|
||
`element = m["foo"]
|
||
`
|
||
|
||
#### حذف العناصر
|
||
|
||
حذف عنصر مع مفتاح `foo` في الخريطة `m` :
|
||
|
||
`delete(m, "foo")
|
||
`
|
||
|
||
#### تحقق مما إذا كان المفتاح قد تم استخدامه
|
||
|
||
تحقق من استخدام مفتاح `foo` في الخريطة `m` :
|
||
|
||
`element, ok = m["foo"]
|
||
`
|
||
|
||
إذا كان `ok` `true` ، فقد تم استخدام المفتاح ويحمل `element` القيمة عند `m["foo"]` . إذا كان `ok` `false` ، فهذا يعني أن المفتاح لم يتم استخدامه وأن `element` يحتفظ بقيمه الصفرية.
|
||
|
||
### الخريطة حرفية
|
||
|
||
يمكنك إنشاء حرفيات الخرائط مباشرة:
|
||
|
||
`var m = map[string]bool{
|
||
"Go": true,
|
||
"JavaScript":false,
|
||
}
|
||
|
||
m["Go"] // true
|
||
m["JavaScript"] = true // Set Javascript to true
|
||
delete(m, "JavaScript") // Delete "JavaScript" key and value
|
||
language, ok = m["C++"] // ok is false, language is bool's zero-value (false)
|
||
`
|
||
|
||
#### معلومات اكثر:
|
||
|
||
* [جولة في الذهاب](https://tour.golang.org/moretypes/19)
|
||
* [الذهاب عن طريق المثال](https://gobyexample.com/maps)
|
||
* [Golang كتاب](https://www.golang-book.com/books/intro/6#section3)
|
||
* [مواصفات لغة برمجة Go](https://golang.org/ref/spec#Making_slices_maps_and_channels) |