আপনি কি মানে LinkedHashSet? এটি প্রবেশের ক্রম সংরক্ষণ করে, তবে সদৃশগুলিকে অনুমতি দেয় না।
আইএমএইচও, এটির একটি অস্বাভাবিক প্রয়োজন তবে আপনি নকল ছাড়াই একটি তালিকা লিখতে পারেন।
class SetList<T> extends ArrayList<T> {
@Override
public boolean add(T t) {
return !super.contains(t) && super.add(t);
}
@Override
public void add(int index, T element) {
if (!super.contains(element)) super.add(index, element);
}
@Override
public boolean addAll(Collection<? extends T> c) {
boolean added = false;
for (T t : c)
added |= add(t);
return added;
}
@Override
public boolean addAll(int index, Collection<? extends T> c) {
boolean added = false;
for (T t : c)
if (!super.contains(t)) {
super.add(index++, t);
added = true;
}
return added;
}
}
Comparator? এছাড়াও আপনি কিListইন্টারফেসের শব্দার্থবিদ্যাও চান ?