[mv-0-to-end-array] move zeros to the end
This commit is contained in:
parent
5eae4e7df8
commit
e8b27416d7
|
@ -0,0 +1,40 @@
|
|||
package com.baeldung.movezerototheend;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
|
||||
|
||||
public class MoveZeroesToTheEndOfAnArrayUnitTest {
|
||||
static final int[] EXPECTED = new int[] { 1, 2, 3, 4, 0, 0 };
|
||||
|
||||
@Test
|
||||
void whenCreatingANewArrayAndCopyingValues_thenGetTheExpectedResult() {
|
||||
int[] array = new int[] { 1, 2, 0, 3, 4, 0 };
|
||||
int[] result = new int[array.length];
|
||||
int idx = 0;
|
||||
for (int n : array) {
|
||||
if (n != 0) {
|
||||
result[idx++] = n;
|
||||
}
|
||||
}
|
||||
assertArrayEquals(EXPECTED, result);
|
||||
}
|
||||
|
||||
@Test
|
||||
void whenMovingZeroInTheOriginalArray_thenGetTheExpectedResult() {
|
||||
int[] array = new int[] { 1, 2, 0, 3, 4, 0 };
|
||||
int idx = 0;
|
||||
for (int n : array) {
|
||||
if (n != 0) {
|
||||
array[idx++] = n;
|
||||
}
|
||||
System.out.println(Arrays.toString(array));
|
||||
}
|
||||
while (idx < array.length) {
|
||||
array[idx++] = 0;
|
||||
}
|
||||
assertArrayEquals(EXPECTED, array);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue