zoukankan      html  css  js  c++  java
  • 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方法,自定义一个排序方式)。
         * 
         */
        
    }
  • 相关阅读:
    python模块安装路径
    yum软件搜索
    项目里用到的python知识点
    python调用C函数
    opencv VideoCapture使用示例
    Django模型层之多表操作
    博客园 装饰
    mysql条件查询-排除null ---oracle、mysql 区分总结
    Android——Fragment详解
    Android——监听事件总结
  • 原文地址:https://www.cnblogs.com/lxh520/p/8260268.html
Copyright © 2011-2022 走看看