我试图通过书中的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) 有一个清单:
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) 我的公司正在改进IT基础架构和系统,因此我们正在最终确定开发新系统的技术.
我们来两位候选人; Java和Python.
选择的主要标准是语言必须完整; 从某种意义上说,它必须能够用于Web和桌面应用程序开发.Java已被证明是这个领域,有许多优秀的Web框架(JSF,Hibernate等)和相对优秀的GUI库(SWT,Swing).
然而,根据我的个人经验,Python看起来更加美味,Python的开发效率很高,我可以用更少的时间做更多的事情(我只有使用Django进行Web开发的经验).但是,对于桌面应用程序,我还发现任何与IDE集成的良好GUI库作为Swing.
有人可以为我指出最好的用于Python桌面应用程序的GUI框架吗?
我有一个大项目,也使用许多库.使用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)
是否有可能找到一个创建这些线程的类?
我正在编写一个财务计算类,它将有许多setter函数输入,一些私有中间值和一些getter函数作为输出.
私有中间值仅取决于输入值.
输出值(由公共getter访问)仅取决于输入和中间值.
最终你可以将整个事物描绘成一个有点纠结的非循环有向图,其中一侧有一堆输入,最终流向右侧的一堆输出.
实现这个课程的最佳方法是什么.我有一些特殊要求:
在可能的情况下,懒惰评估.当输入改变时,我们现在知道可能需要什么输出.
该类必须易于重新设计,因此某种声明性模型将被优先考虑.
理想情况下,我希望能够说C取决于A和B.如果在A或B改变之后请求C,那么它将知道需要重新计算C,否则C将永远不需要刷新.
我有一个Java模式可以帮助我干净地实现这种计算器吗?
什么是使用的主要优势Hashtable与比较HashMap.因为,Hashtable主要优点是同步.现在map也可以同步使用synchronizedMap().
Map m = Collections.synchronizedMap(hashMap);
Run Code Online (Sandbox Code Playgroud) 我个人使用高级并发抽象,因为它们更容易.其实我不记得上次我使用过theads了.但在技术面试中,这是一个经常被问到的问题.是的,我也问过它.
当需要使用低级Thread API而不是Executors/Locks/Latches/etc时,是否存在任何用例?
有没有理由在技术面试中讨论低级线程API?
我正在评估使用heroku和RedisToGo插件的可能性.
我读过有可能设置带有分片和复制的独立redis集群.
但是在heroku文档中,我看到的是JedisPool使用示例而不是ShardedJedisPool.
这是否意味着heroku上的redis不会缩放和碎片?还是内部完成?
如果没有对其中一个键的活动引用,我如何模拟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的其他地方没有活动引用,则必须删除具有指定密钥的条目.我对吗?如果没有,请提出正确的解决方案.
我正在研究Guava中可用的新功能,我找到了一个关于哈希实用程序的页面.
文档说明了这一点
然而,对于除简单哈希表之外的哈希函数的许多用途,Object.hashCode几乎总是不足
你能否分享哈希表之外的哈希函数的一些其他用例?