JavaRush /وبلاگ جاوا /Random-FA /مجموعه ها. نقشه. حذف.
oktava
مرحله
Санкт-Петербург

مجموعه ها. نقشه. حذف.

در گروه منتشر شد
روز خوب. سوال این است که چگونه عناصر را از مجموعه Map حذف کنیم . من سعی می کنم مشکل دیگری را حل کنم و نمی توانم جلو بروم، زیرا نمی دانم حذف از مجموعه بر اساس کدام اصل اتفاق می افتد. ایده حذف عناصر یکسان از یک مجموعه است، مقایسه با مقدار انجام می شود. از سخنرانی های سطح 8 فهمیدم که "تعداد کننده" چیزی شبیه پیوند به مجموعه ما است. بنابراین، من 2 پیوند از این قبیل ایجاد کردم و با مقایسه عناصر موجود در مجموعه، تصمیم گرفتم عناصری را که این پیوند (ابجکت) iterator2 به آنها اشاره دارد، حذف کنم. توضیح دهید که چرا این کار را اشتباه انجام می دهم. من واقعاً می خواهم بفهمم کجا اشتباه می کنم. با تشکر از همه کسانی که پاسخ خواهند داد. گزینه دیگری برای اجرای حذف از یک مجموعه for (Iterator > iterator1 = map.entrySet().iterator(); iterator1.hasNext();){ HashMap.Entry pair1 = iterator1.next(); for (Iterator > iterator2 = map.entrySet().iterator(); iterator2.hasNext();) { HashMap.Entry pair2 = iterator2.next(); if(pair1.getValue().equals(pair2.getValue())){ map.remove(pair2.getKey()); } } } Iterator > iterator1 = map.entrySet().iterator(); while(iterator1.hasNext()){ Map.Entry pair1 = iterator1.next(); Iterator > iterator2 = map.entrySet().iterator(); while(iterator2.hasNext()){ Map.Entry pair2 = iterator2.next(); if (pair1.getValue().equals(pair2.getValue())){ iterator2.remove(); } } }
نظرات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION