Sort stability: Difference between revisions

Line 134:
public class RJSortStability {
 
private static final String[] cityList; =
cityList = new String[] { "UK London", "US New York", "US Birmingham", "UK Birmingham", };
 
static {
cityList = new String[] { "UK London", "US New York", "US Birmingham", "UK Birmingham", };
}
 
public RJSortStability() {
return;
}
 
public static void main(String[] args) {
 
String[] cn = cityList.clone();
 
cn = new String[cityList.length];
System.arraycopy(cityList, 0, cn, 0, cityList.length);
System.out.println("\nBefore sort:");
for (String city : cn) {
Line 155 ⟶ 145:
}
 
Arrays.// sort(cn, newby CityComparator());city
static class CityComparatorArrays.sort(cn, implementsnew Comparator<String>() {
public int compare(String lft, String rgt) {
return lft.substring(4).compareTo(rgt.substring(4));
}
return});
 
System.out.println("\nAfter sort on city:");
Line 162 ⟶ 157:
}
 
cn = new String[cityList.length]clone();
System.arraycopy(cityList, 0, cn, 0, cityList.length);
System.out.println("\nBefore sort:");
for (String city : cn) {
Line 169 ⟶ 163:
}
 
Arrays.// sort(cn, newby CountryComparator());country
Arrays.sort(cn, new Comparator<String>() {
public int compare(String lft, String rgt) {
return lft.substring(0, 2).compareTo(rgt.substring(0, 2));
}
});
 
System.out.println("\nAfter sort on country:");
Line 177 ⟶ 176:
 
System.out.println();
 
return;
}
 
static class CityComparator implements Comparator<String> {
public int compare(String lft, String rgt) {
return lft.substring(4).compareTo(rgt.substring(4));
}
}
 
static class CountryComparator implements Comparator<String> {
public int compare(String lft, String rgt) {
return lft.substring(0, 2).compareTo(rgt.substring(0, 2));
}
}
}
Anonymous user