小编Mic*_*ael的帖子

JUnit测试中的警告

我想在JUnit测试中显示警告.我不希望测试因为该警告而失败,但我想知道警告发生了.显然,我可以使用System.err.print或类似的东西.现在我想知道什么是正确的方法

java junit

14
推荐指数
2
解决办法
8781
查看次数

Scala中特定于域的monad的示例

我的理解(或多或少)标准的单子,如Option (Maybe),List,State,Reader,Writer,等,他们普遍,可以在任何应用程序中找到.通用 monad的其他示例是迭代器,流,数据集合等.

现在我想看看特定领域的 monad.一个例子是Parsermonad.它是作为如普遍Option,List,State等,因为它封装域特定解析逻辑.

您能想到的其他特定领域的 monad是什么?

monads functional-programming scala

14
推荐指数
0
解决办法
417
查看次数

如何排序(百万/十亿/ ...)整数?

有时,访问者会询问如何对数百万/十亿32位整数进行排序(例如此处此处).我猜他们希望候选人将O(N Log(N))排序与基数排序进行比较.对于百万个整数,O(N Log(N))排序可能更好,但对于十亿,它们可能是相同的.是否有意义 ?

sorting algorithm

13
推荐指数
4
解决办法
3万
查看次数

为什么Java中没有ceil(float)?

假设我float想要int进入Java.
例如,

roundUp(0.2) = 1
roundUp(0.7) = 1
roundUp(1.3) = 2
...
Run Code Online (Sandbox Code Playgroud)

我想打电话Math.ceil,并Math.round要做到这一点,但java.lang.Math不提供ceil(float).它仅提供ceil(double).所以我float被提升为double默默,ceil(double)返回doubleround(double)返回,long而我需要向上舍floatint(而不是long).

现在我想知道为什么java.lang.Math只有ceil(double)和没有ceil(float).

java floating-point integer

13
推荐指数
1
解决办法
9920
查看次数

计算给定范围内具有唯一数字的所有数字

这是一个面试问题.计算[1,N]范围内唯一数字(十进制)的所有数字.

显而易见的解决方案是,如果其数字是唯一的,则测试范围中的每个数字.我们还可以生成具有唯一数字(作为排列)的所有数字,并测试它们是否在范围内.

现在我想知道是否有针对此问题的DP(动态编程)解决方案.

algorithm dynamic-programming

13
推荐指数
1
解决办法
8247
查看次数

Scala中的预定执行程序

在Java中,我可以使用Scheduled Executor来安排在给定延迟后运行的任务.我可以在Scala中使用它,但我想知道是否有Scala API.

是否有任何Scala API(而不是Scheduled ExecutorJava)来安排任务?

scala scheduled-tasks

13
推荐指数
2
解决办法
2万
查看次数

MaybeT m的应用实例假设Monad m

我一直在使用Haxlmonad(在这里描述:http://www.reddit.com/r/haskell/comments/1le4y5/the_haxl_project_at_facebook_slides_from_my_talk),它有一个有趣的特性,<*>因为它的Applicative实例ap与Control不同.单子.这是一个关键功能,允许它在不阻塞的情况下进行并发计算.例如,如果hfha是长计算,然后

let hf :: Haxl (a -> b) = ...
    ha :: Haxl a = ...
in do
  f <- hf
  a <- ha
  return (f a)
Run Code Online (Sandbox Code Playgroud)

将按顺序执行它们

hf <*> ha
Run Code Online (Sandbox Code Playgroud)

将并行完成它们然后结合结果.

我希望能够运行计算MaybeT Haxl,但问题是MaybeT m变换器包中的Applicative实例使用monadic绑定:

instance (Functor m, Monad m) => Applicative (MaybeT m) where
    pure = return
    (<*>) = ap
Run Code Online (Sandbox Code Playgroud)

ap = liftM2 id来自哪里Control.Monad.这使得

let hmf :: MaybeT …
Run Code Online (Sandbox Code Playgroud)

monads haskell monad-transformers applicative haxl

13
推荐指数
1
解决办法
441
查看次数

Zipper迭代Scala中的列表

这是我上一个问题的后续行动.我可以用一个迭代器,fold,zip,foreach和别人遍历Scala中的一个列表.现在我想知道是否有Zipper最合适的用例.假设我需要没有并发的只读访问权限.

你能举一个这样的例子来解释为什么这Zipper是最好的选择吗?

scala zipper

13
推荐指数
1
解决办法
953
查看次数

java.util.Random.nextInt的实现

这个功能来自java.util.Random.它返回一个在给定的和给定int之间均匀分布的伪随机数.不幸的是我没有得到它.0n

public int nextInt(int n) {
    if (n <= 0)
        throw new IllegalArgumentException("n must be positive");

    if ((n & -n) == n)  // i.e., n is a power of 2
        return (int)((n * (long)next(31)) >> 31);

    int bits, val;
    do {
        bits = next(31);
        val = bits % n;
    } while (bits - val + (n-1) < 0);
    return val;
}
Run Code Online (Sandbox Code Playgroud)

我的问题是:

  1. 为什么它特别处理n两个权力的情况?这只是为了表现吗?
  2. 为什么它拒绝数字bits - val + (n-1) < 0

java random

13
推荐指数
2
解决办法
2515
查看次数

如何在Node.js中使用XHR API?

这是我上一个问题的后续行动

假设我有一些javascript代码,它在客户端(在浏览器中)运行良好.此代码XHR使用浏览器API 进行大量调用.

现在我想运行此代码node.js.是否在浏览器中node.js提供XHRAPI?

javascript xmlhttprequest node.js

13
推荐指数
2
解决办法
2万
查看次数