Junior — Middle
Stream API-ში არსებული distinct მეთოდის მიზანია რა და როგორ განსხვავდება სხვა ფილტრის მეთოდებისგან?
sobes.tech AI
პასუხი AI-სგან
Stream API-յի distinct() մեթոդը օգտագործվում է տարրերի հոսքից կրկնօրինակները հեռացնելու համար: Այն վերադարձնում է նոր հոսք, որտեղ յուրաքանչյուր տարր եզակի է, հիմնվելով օբյեկտների equals() և hashCode() մեթոդների վրա:
Ի տարբերություն այլ ֆիլտրացման մեթոդների, ինչպիսիք են filter(), distinct() ավտոմատ կերպով հեռացնում է կրկնվող տարրերը, մինչդեռ filter() թույլ է տալիս սահմանել ցանկացած պայման տարրերի ընտրության համար:
Օրինակ՝
List<Integer> numbers = Arrays.asList(1, 2, 2, 3, 4, 4, 5);
List<Integer> distinctNumbers = numbers.stream()
.distinct()
.collect(Collectors.toList());
// distinctNumbers կպարունակի [1, 2, 3, 4, 5]