大家好,圣诞快乐!
我在效率方面遇到了一些麻烦,我希望StackOverflow社区可以帮助我.
在我的一个(静态)类中,我有一个从我的数据库中获取大量信息的函数,解析该信息并将其放入格式化的数组中.这个类中的许多函数依赖于那个格式化的数组,并且在整个类中,我多次调用它,这意味着应用程序在一次运行中多次经历这个过程,我假设它不是很有效.所以我想知道是否有更有效的方法可以做到这一点.有没有办法让我将格式化的数组存储在静态函数中,这样我每次需要格式化数组的信息时都不必重新执行整个过程?
private static function makeArray(){
// grab information from database and format array here
return $array;
}
public static function doSomething(){
$data = self::makeArray();
return $data->stuff;
}
public static function doSomethingElse(){
$data = self::makeArray();
return $data->stuff->moreStuff;
}
Run Code Online (Sandbox Code Playgroud) 我似乎正在努力解决 Haskell 中应该非常简单的事情,但我无法弄清楚,我需要一些帮助。我正在尝试转换整数列表 ([3,2,1]) 并将其转换为单个整数 (321)。
这是我到目前为止所拥有的:
fromDigits :: [Integer] -> Integer
fromDigits [] = 0;
fromDigits (x:xs) = x : fromDigits (xs)
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我需要一些帮助将一些Java代码转换为Haskell.我设法做了一个愚蠢的版本.这个愚蠢的版本如下:
add :: Integer -> Integer -> Integer
add a b = a + b
sub :: Integer -> Integer -> Integer
sub a b = a - b
mult :: Integer -> Integer -> Integer
mult a b = a * b
divi :: Integer -> Integer -> Integer
divi a b = a `div` b
Run Code Online (Sandbox Code Playgroud)
因此,对于上述情况,如果我执行以下示例:
Prelude> add (mult 3 2) (sub 2 1)
Run Code Online (Sandbox Code Playgroud)
它将返回:
Prelude> 7
Run Code Online (Sandbox Code Playgroud)
我知道这有效,但我应该将以下Java代码转换为Haskell,并且我知道上面的代码与Java代码不同:
public class Calculator {
static interface Expression { < T …Run Code Online (Sandbox Code Playgroud)