Have another test that demonstrates the need for separator bytes:

    String strArr1[] = new String[] {"a","c"};
    String strArr2[] = new String[] {"ab"};
    // create arrays for strArr1 and strArr2 and then serialize them to bytes1 and bytes2
    ...
    // Compare arrays strArr1 is smaller than strArr2, since "a" is less than "ab"
    // Demonstrates the need for putting separator bytes after each element, 
    // as otherwise, if element values were just concatenated, this would fail.
    assertTrue(Bytes.compareTo(bytes1, bytes2) < 0);