المبرمج العربي نشر 19 يناير 2016 أرسل تقرير مشاركة نشر 19 يناير 2016 أملك الهاش التالي:h = { 1 => 10, 2 => 20, 5 => 70, 8 => 90, 4 => 34 } وأريد تغيير قيم الهاش v إلى دالة foo(v) وسيصبح هاش h كالتالي:h = { 1 => foo(10), 2 => foo(20), 5 => foo(70), 8 => foo(90), 4 => foo(34) } فما أسهل طريقة لفعل ذلك في روبي؟ اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
0 هشام رزق الله نشر 19 يناير 2016 أرسل تقرير مشاركة نشر 19 يناير 2016 يوجد العديد من الطرق في لغة روبي لفعل ذلك، فيمكنك على سبيل المثال استخدام هذه الطريقة حيث أن f هي الدالة التي تريد تطبيقها على قيم الهاش و hash هو الهاش الخاص بك:hash.update(hash){|key,v1| f(v1)} المثال السابق يعتبر أفضل طريقة وتعمل على أغلب إصدارات روبي، وفي حالة كنت تستخدم إصدار أقدم من 1.8 وتريد طريقة أخرى لفعل ذلك فيمكنك استخدام هذه الطريقة:new_hash = Hash[old_hash.map {|key, value| key, foo(value)}] اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
السؤال
المبرمج العربي
أملك الهاش التالي:
وأريد تغيير قيم الهاش v إلى دالة foo(v) وسيصبح هاش h كالتالي:
فما أسهل طريقة لفعل ذلك في روبي؟
رابط هذا التعليق
شارك على الشبكات الإجتماعية
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.