小编Mai*_*kov的帖子

Scala中的访客模式

在Scala中使用访问者模式是否有任何用例?

每次我在Java中使用访问者模式时,我是否应该在Scala中使用模式匹配

design-patterns scala

25
推荐指数
2
解决办法
7508
查看次数

约束中的模糊类型变量`a0'

我试图通过书中的YesNo例子Learn You a Haskell for Great Good!.

这是我的源代码:

module Main where

main :: IO ()

main = putStrLn ( show (yesno 12) )

class YesNo a where
    yesno :: a -> Bool


instance YesNo Bool where
    yesno b = b

instance YesNo [a] where
    yesno [] = False
    yesno _ = True


instance YesNo Int where
    yesno 0 = False
    yesno _ = True
Run Code Online (Sandbox Code Playgroud)

当我执行此代码后发生异常:

Ambiguous type variable `a0' in the constraints:
  (YesNo a0) arising from …
Run Code Online (Sandbox Code Playgroud)

haskell

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

将列表转换为数组.java.lang.ArrayStoreException

有一个清单:

List<Integer[]> myList = new ArrayList<Integer[]>();
Run Code Online (Sandbox Code Playgroud)

它包含一个sigle条目,但可能包含多个条目:

myList = [[2,null,1,null,null,3,6,1,1]]
Run Code Online (Sandbox Code Playgroud)

我需要将此列表转换为数组Integer[][],但由于null,转换失败:

Integer[] myArr = myList.toArray(new Integer[myList.size()]);
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题?

编辑#1

我需要得到:

myArr = [2,null,1,null,null,3,6,1,1]
Run Code Online (Sandbox Code Playgroud)

java list multidimensional-array

18
推荐指数
1
解决办法
4万
查看次数

Scala CQRS框架

我正在寻找Scala编程语言的CQRS框架.

使用Scala的想法是避免在使用诸如AxonFramework之类的Java框架时出现的注释地狱.

你能推荐一些吗?

scala cqrs

16
推荐指数
1
解决办法
4426
查看次数

桌面应用程序开发中的Python

我的公司正在改进IT基础架构和系统,因此我们正在最终确定开发新系统的技术.

我们来两位候选人; Java和Python.

选择的主要标准是语言必须完整; 从某种意义上说,它必须能够用于Web和桌面应用程序开发.Java已被证明是这个领域,有许多优秀的Web框架(JSF,Hibernate等)和相对优秀的GUI库(SWT,Swing).

然而,根据我的个人经验,Python看起来更加美味,Python的开发效率很高,我可以用更少的时间做更多的事情(我只有使用Django进行Web开发的经验).但是,对于桌面应用程序,我还发现任何与IDE集成的良好GUI库作为Swing.

有人可以为我指出最好的用于Python桌面应用程序的GUI框架吗?

python java desktop-application

15
推荐指数
1
解决办法
1万
查看次数

如何找到Timer线程的来源?

我有一个大项目,也使用许多库.使用jstack我发现有以下线程:

Timer-2, Timer-3, Timer-4....
Run Code Online (Sandbox Code Playgroud)

我可以显示的所有jstack是:

java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.util.TimerThread.mainLoop(Unknown Source)
    - locked <0x1a013c24> (a java.util.TaskQueue)
    at java.util.TimerThread.run(Unknown Source)
Run Code Online (Sandbox Code Playgroud)

是否有可能找到一个创建这些线程的类?

java multithreading timer

8
推荐指数
1
解决办法
5302
查看次数

如何在Java中实现具有内部依赖性的惰性求值状态类?

我正在编写一个财务计算类,它将有许多setter函数输入,一些私有中间值和一些getter函数作为输出.

  • 私有中间值仅取决于输入值.

  • 输出值(由公共getter访问)仅取决于输入和中间值.

最终你可以将整个事物描绘成一个有点纠结的非循环有向图,其中一侧有一堆输入,最终流向右侧的一堆输出.

实现这个课程的最佳方法是什么.我有一些特殊要求:

  • 在可能的情况下,懒惰评估.当输入改变时,我们现在知道可能需要什么输出.

  • 该类必须易于重新设计,因此某种声明性模型将被优先考虑.

理想情况下,我希望能够说C取决于A和B.如果在A或B改变之后请求C,那么它将知道需要重新计算C,否则C将永远不需要刷新.

我有一个Java模式可以帮助我干净地实现这种计算器吗?

java design-patterns

8
推荐指数
1
解决办法
222
查看次数

HashTable的优点

什么是使用的主要优势Hashtable与比较HashMap.因为,Hashtable主要优点是同步.现在map也可以同步使用synchronizedMap().

Map m = Collections.synchronizedMap(hashMap);
Run Code Online (Sandbox Code Playgroud)

java collections

5
推荐指数
1
解决办法
2459
查看次数

何时使用Java Thread API

我个人使用高级并发抽象,因为它们更容易.其实我不记得上次我使用过theads了.但在技术面试中,这是一个经常被问到的问题.是的,我也问过它.

当需要使用低级Thread API而不是Executors/Locks/Latches/etc时,是否存在任何用例?

有没有理由在技术面试中讨论低级线程API?

java multithreading

5
推荐指数
1
解决办法
1087
查看次数

Redis on Heroku Sharding

我正在评估使用heroku和RedisToGo插件的可能性.

我读过有可能设置带有分片和复制的独立redis集群.

但是在heroku文档中,我看到的是JedisPool使用示例而不是ShardedJedisPool.

这是否意味着heroku上的redis不会缩放和碎片?还是内部完成?

heroku redis redistogo

5
推荐指数
1
解决办法
410
查看次数

WeakHashMap不会删除过时的条目

如果没有对其中一个键的活动引用,我如何模拟WeakHashMap中条目的删除.我有下一个代码:

WeakHashMap<Integer, String> weakMap = new WeakHashMap<Integer, String>();
Integer st1 = 5;
Integer st2 = 6;
String val = "BB";
weakMap.put(st1, "AA");
weakMap.put(st2, val);
st1 = 10;
//st1 = null;
//System.gc();
for (Map.Entry<Integer, String> entry : map.entrySet()) {
   System.out.println(entry.getKey() + "  " + entry.getValue());
}
Run Code Online (Sandbox Code Playgroud)

总是输出

6  BB
5  AA
Run Code Online (Sandbox Code Playgroud)

但我希望只得到6 BB 即使我对注释行进行解除,它仍会产生相同的输出.据我所知,如果密钥在WeakHashMap其他地方之外weakHashMap的其他地方没有活动引用,则必须删除具有指定密钥的条目.我对吗?如果没有,请提出正确的解决方案.

java

4
推荐指数
1
解决办法
545
查看次数

番石榴散列用例

我正在研究Guava中可用的新功能,我找到了一个关于哈希实用程序的页面.

文档说明了这一点

然而,对于除简单哈希表之外的哈希函数的许多用途,Object.hashCode几乎总是不足

你能否分享哈希表之外的哈希函数的一些其他用例?

hash guava

0
推荐指数
1
解决办法
687
查看次数