public int lastIndexOf(final long value) { for (int i = size() - 1; i >= 0; i--) { if (array[i] == value) return i; } return -1; }
public long setValue(final int index, final long value) { checkBounds(index); final long oldValue = getValue(index); array[index] = value; return oldValue; }
/** Tests {@link LongArray#add(int, Long)}. */ @Test public void testAdd() { final long[] raw = { 3, 5, 8, 13, 21 }; final LongArray array = new LongArray(raw.clone()); final Long e6 = 1L, e7 = 2L; array.add(e6); array.add(e7); assertEquals(raw.length + 2, array.size()); for (int i = 0; i < raw.length; i++) { assertEquals("@" + i, raw[i], array.getValue(i)); } assertEquals(e6, array.get(5)); assertEquals(e7, array.get(6)); }
/** Tests {@link LongArray#LongArray(long[])}. */ @Test public void testConstructorArray() { final long[] raw = { 3, 5, 8, 13, 21 }; final LongArray array = new LongArray(raw); assertSame(raw, array.getArray()); assertEquals(raw.length, array.size()); for (int i = 0; i < raw.length; i++) { assertEquals("@" + i, raw[i], array.getValue(i)); } assertArrayEquals(raw, array.copyArray()); }
/** Tests {@link LongArray#set(int, Long)}. */ @Test public void testSet() { final long[] raw = { 3, 5, 8, 13, 21 }; final LongArray array = new LongArray(raw.clone()); final Long e0 = 7L, e2 = 1L, e4 = 2L; array.set(0, e0); array.set(2, e2); array.set(4, e4); assertEquals(raw.length, array.size()); assertEquals(e0, array.get(0)); assertEquals(raw[1], array.getValue(1)); assertEquals(e2, array.get(2)); assertEquals(raw[3], array.getValue(3)); assertEquals(e4, array.get(4)); }
/** Tests {@link LongArray#addValue(long)}. */ @Test public void testAddValue() { final long[] raw = { 3, 5, 8, 13, 21 }; final LongArray array = new LongArray(raw.clone()); final long e6 = 1, e7 = 2; array.addValue(e6); array.addValue(e7); assertEquals(raw.length + 2, array.size()); for (int i = 0; i < raw.length; i++) { assertEquals("@" + i, raw[i], array.getValue(i)); } assertEquals(e6, array.getValue(5)); assertEquals(e7, array.getValue(6)); }
/** Tests {@link LongArray#removeValue(long)}. */ public void testRemoveValue() { final long[] raw = { 3, 5, 8, 13, 21 }; final LongArray array = new LongArray(raw.clone()); assertEquals(raw.length, array.size()); array.removeValue(raw[0]); assertEquals(raw.length - 1, array.size()); array.removeValue(raw[2]); assertEquals(raw.length - 2, array.size()); array.removeValue(raw[4]); assertEquals(raw.length - 3, array.size()); assertEquals(raw[1], array.getValue(0)); assertEquals(raw[3], array.getValue(1)); }
/** Tests {@link LongArray#setValue(int, long)}. */ @Test public void testSetValue() { final long[] raw = { 3, 5, 8, 13, 21 }; final LongArray array = new LongArray(raw.clone()); final long e0 = 7, e2 = 1, e4 = 2; array.setValue(0, e0); array.setValue(2, e2); array.setValue(4, e4); assertEquals(raw.length, array.size()); assertEquals(e0, array.getValue(0)); assertEquals(raw[1], array.getValue(1)); assertEquals(e2, array.getValue(2)); assertEquals(raw[3], array.getValue(3)); assertEquals(e4, array.getValue(4)); }
/** Tests {@link LongArray#remove(int)}. */ public void testRemoveIndex() { final long[] raw = { 3, 5, 8, 13, 21 }; final LongArray array = new LongArray(raw.clone()); assertEquals(raw.length, array.size()); array.remove(0); assertEquals(raw.length - 1, array.size()); array.remove(2); assertEquals(raw.length - 2, array.size()); array.remove(4); assertEquals(raw.length - 3, array.size()); assertEquals(raw[1], array.getValue(0)); assertEquals(raw[3], array.getValue(1)); }
/** Tests {@link LongArray#removeAll}. */ @Test public void testRemoveAll() { final long[] raw = { 3, 5, 8, 13, 21 }; final LongArray array = new LongArray(raw.clone()); final LongArray toRemove = new LongArray(new long[] { 3, 8, 21 }); assertEquals(raw.length, array.size()); array.removeAll(toRemove); assertEquals(raw.length - 3, array.size()); assertEquals(raw[1], array.getValue(0)); assertEquals(raw[3], array.getValue(1)); }
final LongArray axisLengths = new LongArray(); imgMeta.setPlanarAxisCount(2); axis = FormatTools.createAxis(Axes.X); axes.add(axis); axisLengths.add((long) reader.getSizeX()); calibrate(store.getPixelsPhysicalSizeX(s), axis, stageLabelX); break; axis = FormatTools.createAxis(Axes.Y); axes.add(axis); axisLengths.add((long) reader.getSizeY()); calibrate(store.getPixelsPhysicalSizeY(s), axis, stageLabelY); if (reader.getSizeZ() > 1) { axes.add(axis); axisLengths.add((long) reader.getSizeZ()); calibrate(store.getPixelsPhysicalSizeZ(s), axis, stageLabelZ); if (reader.getSizeT() > 1) { axes.add(FormatTools.createAxis(Axes.TIME)); axisLengths.add((long) reader.getSizeT()); imgMeta.setAxisLengths(axisLengths.copyArray());
/** Tests {@link LongArray#addAll(int, java.util.Collection)}. */ @Test public void testAddAll() { final long[] raw = { 3, 5, 8, 13, 21 }; final LongArray array = new LongArray(raw.clone()); final long[] add = { 1, 7 }; final LongArray toAdd = new LongArray(add.clone()); final int index = 3; array.addAll(index, toAdd); for (int i = 0; i < index; i++) { assertEquals(raw[i], array.getValue(i)); } for (int i = index; i < index + add.length; i++) { assertEquals(add[i - index], array.getValue(i)); } for (int i = index + add.length; i < raw.length + add.length; i++) { assertEquals(raw[i - add.length], array.getValue(i)); } }
/** Tests {@link LongArray#delete(int, int)}. */ @Test public void testDelete() { final long[] raw = { 3, 5, 8, 13, 21 }; testDelete(new LongArray(raw)); }
/** Tests {@link LongArray#indexOf(long)}. */ @Test public void testIndexOf() { final long[] raw = { 3, 5, 8, 13, 21 }; final LongArray array = new LongArray(raw.clone()); for (int i = 0; i < raw.length; i++) { assertEquals("@" + i, i, array.indexOf(raw[i])); } assertEquals(-1, array.indexOf(-1)); assertEquals(-1, array.indexOf(0)); assertEquals(-1, array.indexOf(1)); assertEquals(-1, array.indexOf(Long.MAX_VALUE)); assertEquals(-1, array.indexOf(Long.MIN_VALUE)); }
/** Tests {@link LongArray#lastIndexOf(long)}. */ @Test public void testLastIndexOf() { final long[] raw = { 3, 5, 8, 13, 21 }; final LongArray array = new LongArray(raw.clone()); for (int i = 0; i < raw.length; i++) { assertEquals("@" + i, i, array.lastIndexOf(raw[i])); } assertEquals(-1, array.lastIndexOf(-1)); assertEquals(-1, array.lastIndexOf(0)); assertEquals(-1, array.lastIndexOf(1)); assertEquals(-1, array.lastIndexOf(Long.MAX_VALUE)); assertEquals(-1, array.lastIndexOf(Long.MIN_VALUE)); }