الفرق بين المراجعتين ل"Ruby/Hash/5B-5D-3D"
اذهب إلى التنقل
اذهب إلى البحث
جميل-بيلوني (نقاش | مساهمات) (إنشاء الصفحة.) |
جميل-بيلوني (نقاش | مساهمات) (إضافة محتويات الصفحة.) |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE:المعامل <code>[]</code> الخاص بالصنف <code>Hash</code> في روبي}}</noinclude> | <noinclude>{{DISPLAYTITLE:المعامل <code>[]</code> الخاص بالصنف <code>Hash</code> في روبي}}</noinclude> | ||
[[تصنيف: Ruby]] | [[تصنيف: Ruby]] | ||
− | [[تصنيف: Ruby | + | [[تصنيف: Ruby Operator]] |
[[تصنيف: Ruby Hash]] | [[تصنيف: Ruby Hash]] | ||
− | + | يربط المعامل <code>[]</code> عند استدعائه بالشكل <code>hsh[key] = value</code> القيمة <code>value</code> المعطاة بالمفتاح <code>key</code> في الجدول <code>[[Ruby/Hash|Hash]]</code>. | |
− | ==البنية العامة== | + | |
+ | == البنية العامة == | ||
<syntaxhighlight lang="ruby">hsh[key] = value → value</syntaxhighlight> | <syntaxhighlight lang="ruby">hsh[key] = value → value</syntaxhighlight> | ||
==المعاملات== | ==المعاملات== | ||
+ | |||
+ | === <code>key</code> === | ||
+ | المفتاح الذي يراد ربط القيمة <code>value</code> المعطاة به. | ||
==القيمة المعادة== | ==القيمة المعادة== | ||
− | تعاد | + | تعاد القيمة <code>value</code> نفسها بعد ربطها بالمفتاح <code>key</code>. |
+ | == أمثلة == | ||
+ | مثال على استعمال المعامل <code>[]</code>:<syntaxhighlight lang="ruby"> | ||
+ | h = { "a" => 100, "b" => 200 } | ||
+ | h["a"] = 9 | ||
+ | h["c"] = 4 | ||
+ | h #=> {"a"=>9, "b"=>200, "c"=>4} | ||
+ | h.store("d", 42) #=> 42 | ||
+ | h #=> {"a"=>9, "b"=>200, "c"=>4, "d"=>42} | ||
+ | </syntaxhighlight>انتبه إلى أنَّه لا يجب تغيير قيمة كائنٍ أثناء استخدامه كمفتاح، إذ ستكرر السلاسل النصية غير المجمدة المستعملة كمفتاح وتُجمَّد. اطلع على المثال التالي الذي يشرح ذلك:<syntaxhighlight lang="ruby"> | ||
+ | a = "a" | ||
+ | b = "b".freeze | ||
+ | h = { a => 100, b => 200 } | ||
+ | h.key(100).equal? a #=> false | ||
+ | h.key(200).equal? b #=> true | ||
+ | </syntaxhighlight> | ||
==انظر أيضا== | ==انظر أيضا== | ||
− | * | + | * المعامل <code>[[Ruby/Hash/5B-5D|[]]]</code>: يجلب القيمة المقابلة لمفتاح معين في الجدول <code>[[Ruby/Hash|Hash]]</code> المعطى. |
+ | * المعامل <code>[[Ruby/Hash/equal|==]]</code> من تساوي كائنين من النوع <code>[[Ruby/Hash|Hash]]</code>. | ||
==مصادر== | ==مصادر== | ||
− | *[http://ruby-doc.org/core-2.5.1/Hash.html#method-i-5B-5D-3D قسم المعامل [] في الصنف Hash في توثيق روبي الرسمي.] | + | *[http://ruby-doc.org/core-2.5.1/Hash.html#method-i-5B-5D-3D <nowiki>قسم المعامل [] في الصنف Hash في توثيق روبي الرسمي.</nowiki>] |
مراجعة 08:21، 26 نوفمبر 2018
يربط المعامل []
عند استدعائه بالشكل hsh[key] = value
القيمة value
المعطاة بالمفتاح key
في الجدول Hash
.
البنية العامة
hsh[key] = value → value
المعاملات
key
المفتاح الذي يراد ربط القيمة value
المعطاة به.
القيمة المعادة
تعاد القيمة value
نفسها بعد ربطها بالمفتاح key
.
أمثلة
مثال على استعمال المعامل []
:
h = { "a" => 100, "b" => 200 }
h["a"] = 9
h["c"] = 4
h #=> {"a"=>9, "b"=>200, "c"=>4}
h.store("d", 42) #=> 42
h #=> {"a"=>9, "b"=>200, "c"=>4, "d"=>42}
انتبه إلى أنَّه لا يجب تغيير قيمة كائنٍ أثناء استخدامه كمفتاح، إذ ستكرر السلاسل النصية غير المجمدة المستعملة كمفتاح وتُجمَّد. اطلع على المثال التالي الذي يشرح ذلك:
a = "a"
b = "b".freeze
h = { a => 100, b => 200 }
h.key(100).equal? a #=> false
h.key(200).equal? b #=> true
انظر أيضا
- المعامل
[]
: يجلب القيمة المقابلة لمفتاح معين في الجدولHash
المعطى. - المعامل
==
من تساوي كائنين من النوعHash
.