import java.util.Arrays;
import java.util.List;
public class SortByString {
public static void main(String[] args) {
List<String> lst = Arrays.asList(
"Python 4", "C 9", "C++ 5", "C# 6",
"Java 1", "PHP 7", "Go 2"
);
lst.sort((a, b) -> {
String nameA = extractName(a);
String nameB = extractName(b);
return nameA.compareTo(nameB);
});
lst.forEach(System.out::println);
}
private static String extractName(String s) {
int pos = s.lastIndexOf(' ');
return s.substring(0, pos);
}
}
/*
run:
C 9
C# 6
C++ 5
Go 2
Java 1
PHP 7
Python 4
*/