• 6-3 lambda表达式


    import java.util.Arrays;
    import java.util.Comparator;
    
    public class LengthComparator implements Comparator<String> {
    
        @Override
        public int compare(String first, String second) {
            System.out.println("===");
            return second.length() - first.length();
        }
    
        public static void main(String[] args) {
            
            String[] firend = {"pa","eee","pmee"};
    //        Arrays.sort(firend);
            Arrays.sort(firend, new LengthComparator()); 
    //        Arrays.sort(firend, (String first, String second) -> first.length() - second.length()); 
    //        Arrays.sort(firend, (String first, String second) -> { if (first.length()>second.length()) {return 1;} else{return 0;}} ); 
    //        Arrays.sort(firend, (first, second) -> first.length() - second.length()); 
            
            
            for (String string : firend) {
                System.out.println(string); 
            }
            
        }
        
        
        /**
         * lambda表达式
         * 
         * 
         * Java是一种强类型的语言
         * 
         *1. 语法:
         * 
         * 参数  箭头(->)表达式   如果表达式无法完成计算可以放在{}里
         * 
         * 例如: (String first, String second) -> first.length() - second.length()
         *               (String first, String second) -> { if (first.length()>second.length()) {return 1;} else{return 0;}}
         * 
         * 即使没有参数,也要提供括号 () - > {for(int i = 0;i< 5 ;i++){System.out.println(i);}}
         * 
         *如果可以推导出参数类型可以将其忽略
         * Comparator<String> com =  ( first, second) -> first.length() - second.length()
         * 
         * 
         * 2.
         * Arrays.sort(firend, new LengthComparator());   sort方法会调用一个new LengthComparator()对象实例(compare不是静态方法),
         * 会不断调用重写的compare方法,直到排序完成(重写compare方法,自定义一个排序方式)。
         * 
         */
        
    }
  • 相关阅读:
    Android OpenGL(2)
    Bootloader:BareBox
    Android OpenGL(1)
    Android脚本环境
    Android用户界面开发:事件处理
    S5PV210按键控制LED
    S5PV210控制蜂鸣器
    Windows Vista/Windows 7上安装wince5.0/6.0及SDK模拟器
    Makefile
    每日英语:Apps Reorder the Job Landscape
  • 原文地址:https://www.cnblogs.com/lxh520/p/8260268.html
Copyright © 2020-2023  润新知