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

مجموعو. نقشو. حذف ڪريو.

گروپ ۾ شايع ٿيل
توهان جو ڏينهن سٺو گذري. سوال اهو آهي ته نقشي جي مجموعي مان عناصر کي ڪيئن هٽايو وڃي . مان هڪ ٻيو مسئلو حل ڪرڻ جي ڪوشش ڪري رهيو آهيان ۽ اڳتي نه ٿو وڌي سگهان، ڇو ته مون کي سمجهه ۾ نه ٿو اچي ته ڪهڙن اصولن تي ڪليڪشن کي ختم ڪيو وڃي. خيال اهو آهي ته هڪجهڙائي عناصر کي گڏ ڪرڻ کان هٽايو وڃي، مقابلو قدر سان ڪيو ويندو آهي. ليول 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