/** * @author lautturi.com * Java example: sort a list/arraylist in java using stream */ import java.util.*; import java.util.stream.Collectors; public class Lautturi { public static void main(String[] args) { List<String> list = Arrays.asList( "hello","lautturi","java","python","world","lau","perl","js"); List<String> sorted = list.stream().sorted((o1,o2)-> o1.compareTo(o2)).collect(Collectors.toList()); // List<String> sorted = list.stream().sorted().collect(Collectors.toList()); // List<String> sorted = list.stream().sorted((o1,o2)-> o1.length() - o2.length() ).collect(Collectors.toList()); // order by length of string // List<String> sorted = list.stream().sorted((o1,o2)-> o2.compareTo(o1)).collect(Collectors.toList()); // sort list in decreasing/descending/reverse order System.out.println("list:"+list); System.out.println("sorted list:"+sorted); } }
output:
original list:[hello, lautturi, java, python, world, lau, perl, js] sorted list:[hello, java, js, lau, lautturi, perl, python, world]
/** * @author lautturi.com * Java example: */ import java.util.*; import java.util.stream.Collectors; public class Lautturi { public static void main(String[] args) { List<String> list = Arrays.asList( "hello","lautturi","java","python","world","lau","perl","js"); System.out.println("original list:"+list); Collections.sort(list); //acsending order by default // Collections.sort(list, Collections.reverseOrder()); // decreasing/descending/reverse order // Collections.sort(list, (a, b) -> a.compareToIgnoreCase(b)); // sort ignore the char case of string System.out.println("sorted list:"+list); } }
output:
original list:[hello, lautturi, java, python, world, lau, perl, js] sorted list:[hello, java, js, lau, lautturi, perl, python, world]