### Question:
SimpleColumnCombination implements Comparable<SimpleColumnCombination> { public SimpleColumnCombination flipOff(int position) { int[] newColumns = new int[columns.length - 1]; System.arraycopy(columns, 0, newColumns, 0, position); System.arraycopy(columns, position + 1, newColumns, position, columns.length - position - 1); return new SimpleColumnCombination(table, newColumns); } SimpleColumnCombination(int table, int[] columns); private  SimpleColumnCombination(int table, int[] columns, int additionalColumn); boolean isActive(); void setActive(boolean active); long getDistinctCount(); static SimpleColumnCombination create(int table, int... columns); SimpleColumnCombination flipOff(int position); int getTable(); int getColumn(int index); int[] getColumns(); boolean startsWith(SimpleColumnCombination other); SimpleColumnCombination combineWith(SimpleColumnCombination other, Map<SimpleColumnCombination, SimpleColumnCombination> columnCombinations); int lastColumn(); @Override int hashCode(); @Override boolean equals(Object obj); @Override int compareTo(SimpleColumnCombination o); @Override String toString(); int setIndex(); void setIndex(int index);  }### Answer:
@Test public void testFlipOff() throws Exception { SimpleColumnCombination a = SimpleColumnCombination.create(TABLE, 1,2,3); SimpleColumnCombination b = a.flipOff(0); SimpleColumnCombination c = a.flipOff(1); SimpleColumnCombination d = a.flipOff(2); assertThat(b, equalTo(SimpleColumnCombination.create(TABLE, 2, 3))); assertThat(c, equalTo(SimpleColumnCombination.create(TABLE, 1, 3))); assertThat(d, equalTo(SimpleColumnCombination.create(TABLE, 1, 2))); }