import java.util.Comparator;
import java.util.Arrays;

public class ComparatorTest {
  public static void main(String[] args) {
    String[] strings = {"Here", "are", "some", "sample", "strings", "to", "be", "sorted"};

    Arrays.sort(strings, (s1, s2) -> {
      int c = s2.length() - s1.length();
      if (c == 0)
        c = s1.compareToIgnoreCase(s2);
      return c;
    });

    for (String s: strings)
      System.out.print(s + " ");
  }
}
