zoukankan      html  css  js  c++  java
  • paip. java的 函数式编程 大法

    paip. java的 函数式编程 大法

    Java 语言中常被忽视的一个方面是它被归类为一种命令式(imperative)编程语言。命令式编程虽然由于与 Java 语言的关联而相当普及,但是并不是惟一可用的编程风格,也不总是最有效的。在本文中,我将探讨在 Java 开发实践中加入不同的编程方法 ── 即函数编程(FP

    如何使用像闭包(closure)和 高阶函数(higher order function)这样的函数编程结构,在 Java 语言中编写良构的、模块化的代码。

    作者Attilax 艾龙,  EMAIL:1466519819@qq.com
    来源:attilax的专栏
    地址:http://blog.csdn.net/attila


    ///为什么使用函数式编程??
    在java中,主要体现在
    1. 提高代码可读性.
    2. 提高灵活性.

     
    /建立以及初始化对象(函数式编程方法)
        Set set = new HashSet() {
                {
                    add(1);
                    add(2);
                }
            };
            String[] a = {};
            String[] b = {"aa","bb"};

    /动态添加方法,调用方法.运算结果复职
    String s = new HashSet() {
            
                public String $() {
                    return "halo world";
                }

            }.$();

    //调用匿名方法(无返回值)
      new HashSet() {
                    {
                        //something
                    }
                };

    //调用匿名方法(有返回值)
             new tryX<Object>() {

                @Override
                public Object $(Object t) throws Exception {
                    // TODO Auto-generated method stub
                    return null;
                }

            
            }.$();


    //闭包, handle消息
    button.onAction(new EventHandler<ActionEvent>() {
        @Override
        public void handle(ActionEvent e) {
            doSomethingWith(e);
        }
    });





    /参考
    Funcito新闻 - Java函数式编程 - 开源中国社区.htm
    基于范型的java函数式编程(一) - 游弋在移动互联网的银狐999 - 博客频道 - CSDN.NET.htm
    面向Java开发者的函数式编程 (豆瓣).htm
  • 相关阅读:
    LeetCode 226. Invert Binary Tree
    LeetCode 221. Maximal Square
    LeetCode 217. Contains Duplicate
    LeetCode 206. Reverse Linked List
    LeetCode 213. House Robber II
    LeetCode 198. House Robber
    LeetCode 188. Best Time to Buy and Sell Stock IV (stock problem)
    LeetCode 171. Excel Sheet Column Number
    LeetCode 169. Majority Element
    运维工程师常见面试题
  • 原文地址:https://www.cnblogs.com/attilax/p/15199332.html
Copyright © 2011-2022 走看看