### Question:
Version implements Comparable<Version> { private Version(String version) { final String[] parts = version.split("\\-")[0].split("\\."); numbers = new int[parts.length]; for (int i = 0; i < parts.length; i++) { numbers[i] = Integer.valueOf(parts[i]); } } private  Version(String version); static Version of(String version); @Override int compareTo(Version another); static final Version UNKNOWN_VERSION; }### Answer:
@Test void testVersion() { assertThat(Version.of("1.2.3")).isGreaterThan(Version.of("1.2.2")); assertThat(Version.of("1.2.3-SNAPSHOT")).isGreaterThan(Version.of("1.2.2")); }