Avatar ·

كيفية تحويل Vector إلى HashSet في Rust: دليل كامل

مرحباً بالجميع! بدأت مؤخراً في تعلم Rust وواجهت مشكلة. لدي Vector يحتوي على أرقام، وأريد الحصول على HashSet منه لإزالة التكرارات والتحقق بسرعة من وجود العناصر. في لغات أخرى، مثل Python، يتم ذلك بسطر واحد: `set(my_list)`. أما في Rust فلا أستطيع فهم كيفية القيام بذلك بشكل صحيح. إليك الكود الخاص بي: ```rust let numbers = vec![1, 2, 3, 2, 1, 4, 5]; // أريد الحصول على HashSet من هذا الـ Vector let unique_numbers: HashSet = numbers.???; // ماذا أكتب هنا؟ ``` لقد جربت استخدام `numbers.into_iter().collect()`، لكن المترجم اشتكى من أنه لا يستطيع استنتاج النوع. جربت أيضاً تحديد `HashSet::from_iter(numbers)` بشكل صريح، لكنه لم يعمل أيضاً – قال إن الـ trait `FromIterator` غير مطبق. كما سمعت عن طريقة `drain()`، لكنني لست متأكداً.

لا توجد إجابات بعد.

تسجيل الدخول لترك إجابة

المدونات