[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/biblelamp/JavaExercises/master/Experiments/Lambda1Example.java [Back]  [Original]

import java.util.*;
/**
 * Popular about lambda expressions in Java (RU), part 1
 * @see https://javarush.ru/groups/posts/264-populjarno-o-ljambda-vihrazhenijakh-v-java-s-primerami-i-zadachami-chastjh-1-
 */
class Lambda1Example {

    public static void main(String[] args) {
        String[] array1 = {"", "", ""};
        String[] array2 = {"", "", "", "java"};
        String[] array3 = {"", "", ""};

        List arrays = new ArrayList();
        arrays.add(array1);
        arrays.add(array2);
        arrays.add(array3);

        Comparator sortByLength = new Comparator() {
            @Override
            public int compare(String[] o1, String[] o2) {
                return o1.length - o2.length;
            }
        };

        Comparator sortByWordsLength = new Comparator() {
            @Override
            public int compare(String[] o1, String[] o2) {
                int length1 = 0;
                int length2 = 0;
                for (String s : o1)
                    length1 += s.length();
                for (String s : o2)
                    length2 += s.length();
                return length1 - length2;
            }
        };

        //arrays.sort(sortByWordsLength);
        //arrays.sort(sortByLength);
        /*
        arrays.sort(new Comparator() {
            @Override
            public int compare(String[] o1, String[] o2) {
                return o1.length - o2.length;
            }
        });
        */
        arrays.sort((o1, o2) -> o1.length - o2.length);
        arrays.sort((o1, o2) -> {
            int length1 = 0;
            int length2 = 0;
            for (String s : o1)
                length1 += s.length();
            for (String s : o2)
                length2 += s.length();
            return length1 - length2;
        });

        //for (String[] list : arrays)
        //    System.out.println(Arrays.toString(list));
        arrays.forEach(x -> System.out.println(Arrays.toString(x)));
    }
}

Web Proxy Viewer  |  New URL  |  Original Page