functional-programming

    1热度

    2回答

    我是java/kotlin中函数式编程的新手,并进行一些练习。 只是想知道如何在调用lambda时传递参数。例如,在这里调用someMethod我需要传递一个Int参数。 fun lambdaTest(someMethod: (Int) -> Boolean){ someMethod() } 这怎么办?答案可能很简单,我只是没有在任何地方找到它,在文档中有只列出的例子,如果其中的答

    1热度

    1回答

    考虑下面的代码片段: type asdf = '.' | number; const foo: asdf[] = ['.', 1, 3, '.']; const bar: number[] = foo.filter(v => typeof v === 'number'); 它无法编译,因为编译器无法推断出的bar类型是number[]。 为什么编译器不能推导出正确的类型? 什么是使编译器理

    -2热度

    1回答

    我有一个我一直在使用和工作的代码片段。它在我的应用程序中使用很多,我需要加快速度。以字符串路径深入访问对象是否有更好的方法?它需要能够访问的属性和方法,请参阅我下面的例子: function get(obj, path) { var paths = path.split('.'), curProp = obj; for(var i=0;i<paths.leng

    2热度

    2回答

    正如标题所说,我正在寻找使用lambda表达式来实现一些非常简短的方法,这一切都不为人所知。 Python可以做到这一点,C#可以做到这一点,在某种程度上我相信即使是C++现在也可以做到。 但我试图做一个Java类没有成功的相同,我查了一切可能回答这个问题,没有运气。我宁愿不使用100个函数接口来集群我的应用程序,只是为了能够使用lambda表达式来处理更加微不足道的函数或方法,因为那样会挫败编写

    -1热度

    1回答

    林学习如何正则表达式的工作,也有在互联网很好的例子,但我的问题是所有的例子都使用 open System.Text.RegularExpressions 当我尝试打开该模块我得到RegularExpressions没有定义,而当我使用FSharp互动然后我可以使用该模块,我怎样才能在与Fsharpc编译时工作这个模块。 的错误,我得到: [在这里输入的形象描述

    3热度

    1回答

    我试图取一个字符串,如"hello world : bye world"并获得["hello world"; ":" ;"bye world"]。

    0热度

    1回答

    在使用Scala进行函数式编程的过程中,我看到了两种形式的def声明。但我不知道它们之间的差异,也不知道它的名称。我如何获得更多关于此的信息? 宣言1 def sum(f: Int => Int)(a: Int, b: Int): Int = ??? 宣言2 def sum(f: Int => Int, a: Int, b: Int): Int = ???

    0热度

    1回答

    我正在尝试使用函数式编程来编写以下函数。 def mv(A,X,n): Y = [0]*n for i in range(n): for j in range(n): Y[i] += A[i][j] * X[j] return Y 减法函数可以将一个向量乘以一个矩阵吗?因为这是我在这里要做的。我正在尝试将矩阵A与矢量X相乘,但收到错误。错

    1热度

    1回答

    我想在python中使用reduce函数编写一个累积和的版本。这是我到目前为止的代码: from functools import reduce def my_cum_sum(arg): return reduce(lambda a, x: (a.append(a[-1] + x)) if len(a) > 0 else a.append(x), arg, []) assert(

    3热度

    2回答

    我刚刚在序言开始了,我希望能执行以下任务: 做谓语A(P,N,L)使得对所有C这是L,P(N,C)第n个元素。 基本上我想执行范围[0..N]的地图。 在Haskell,我最熟悉的语言,这看起来像 f p n = map(p)[0..n] (哈斯克尔不相当有谓语,所以我在这里采取了一些自由) 或pointfree f = (.enumFromTo 0).map 而且看起来我应该能够在Pro