public TreePVector<E> minusAll(final Collection<?> list) { TreePVector<E> result = this; for(Object e : list) result = result.minus(e); return result; }
public TreePVector<E> minusAll(final Collection<?> list) { TreePVector<E> result = this; for(Object e : list) result = result.minus(e); return result; }
public TreePVector<E> minus(final Object e) { for(Entry<Integer,E> entry : map.entrySet()) if(entry.getValue().equals(e)) return minus((int)entry.getKey()); return this; }
public TreePVector<E> minus(final Object e) { for(Entry<Integer,E> entry : map.entrySet()) if(entry.getValue().equals(e)) return minus((int)entry.getKey()); return this; }
@Override public TreePVector<E> subList(final int start, final int end) { final int size = size(); if(start<0 || end>size || start>end) throw new IndexOutOfBoundsException(); if(start==end) return empty(); if(start==0) { if(end==size) return this; // remove from end: return this.minus(size-1).subList(start, end); } // remove from start: return this.minus(0).subList(start-1,end-1); }
@Override public TreePVector<E> subList(final int start, final int end) { final int size = size(); if(start<0 || end>size || start>end) throw new IndexOutOfBoundsException(); if(start==end) return empty(); if(start==0) { if(end==size) return this; // remove from end: return this.minus(size-1).subList(start, end); } // remove from start: return this.minus(0).subList(start-1,end-1); }
public TreePVector<E> minusAll(final Collection<?> list) { TreePVector<E> result = this; for(Object e : list) result = result.minus(e); return result; }
public TreePVector<E> minusAll(final Collection<?> list) { TreePVector<E> result = this; for (Object e : list) result = result.minus(e); return result; }
UtilityTest.assertEqualsAndHash(TreePVector.empty(), pvec.minusAll(pvec)); UtilityTest.assertEqualsAndHash(pvec, TreePVector.empty().plusAll(pvec)); UtilityTest.assertEqualsAndHash(pvec, TreePVector.singleton(10).plusAll(1,pvec).minus(0));
public TreePVector<E> minus(final Object e) { for(Entry<Integer,E> entry : map.entrySet()) if(entry.getValue().equals(e)) return minus((int)entry.getKey()); return this; }
public TreePVector<E> minus(final Object e) { for (Entry<Integer, E> entry : map.entrySet()) if (entry.getValue().equals(e)) return minus((int) entry.getKey()); return this; }
@Override public TreePVector<E> subList(final int start, final int end) { final int size = size(); if(start<0 || end>size || start>end) throw new IndexOutOfBoundsException(); if(start==end) return empty(); if(start==0) { if(end==size) return this; // remove from end: return this.minus(size-1).subList(start, end); } // remove from start: return this.minus(0).subList(start-1,end-1); }
@Override public TreePVector<E> subList(final int start, final int end) { final int size = size(); if (start < 0 || end > size || start > end) throw new IndexOutOfBoundsException(); if (start == end) return empty(); if (start == 0) { if (end == size) return this; // remove from end: return this.minus(size - 1).subList(start, end); } // remove from start: return this.minus(0).subList(start - 1, end - 1); }