以下代码有什么问题?
Object[] a = new Object[1];
Integer b=1;
a[0]=b;
Integer[] c = (Integer[]) a;
Run Code Online (Sandbox Code Playgroud)
代码在最后一行有以下错误:
线程"main"中的异常java.lang.ClassCastException:[Ljava.lang.Object; 无法转换为[Ljava.lang.Integer;
我是Java的新手,想要使用交互式shell学习Java,就像我使用IPython使用Python一样.
我尝试了一些交互式shell,例如beanshell,jython,jythonconsole和JyConsole.他们中的大多数没有像IPython那样的标签完成.有没有类似于IPython for java的东西?
我正在使用iPython来运行我的代码.我想知道是否有任何模块或命令可以让我检查一个对象的内存使用情况.例如:
In [1]: a = range(10000)
In [2]: %memusage a
Out[2]: 1MB
Run Code Online (Sandbox Code Playgroud)
类似于%memusage <object>并返回对象使用的内存.
重复
如何在c ++中为tr1 :: unordered_set类型的集合做交集和并集?我找不到太多关于它的参考.
任何参考和代码将受到高度赞赏.非常感谢你.
更新:我只是猜到了tr1 :: unordered_set应该提供交集,联合,差异的函数.因为那是集合的基本操作.当然我可以自己编写一个函数,但我只是想知道是否有来自tr1的内置函数.非常感谢你.
在python中,如果我有一些我想根据输入调用的函数,我可以这样做:
lookup = {'function1':function1, 'function2':function2, 'function3':function3}
lookup[input]()
Run Code Online (Sandbox Code Playgroud)
那就是我有一个映射到该函数的函数名字典,并通过字典查找来调用该函数.
如何在java中执行此操作?
我为Mathematica编写了一个名为MathOO的软件包.简而言之,它允许您在Mathematica中使用面向对象,就像在Python中一样.有关详细信息,请阅读Voofie/MathOO中的以下文章:
MathOO:使用MathOO向Mathematica添加Python风格的对象方向(1.0 beta发布)[Objectica的替代方案]
我遇到的问题是,我想要垃圾收集器,以便用户在使用它之后不必显式删除该对象.例如:
NewClass[Object1]
Object1.$init$[self_]:= Return[];
Run Code Online (Sandbox Code Playgroud)
在上面的两行中,我只是将Object1定义为一个新类,将构造函数定义为一个空函数.如果你熟悉Python,你应该看到它的相似性__init__().
要实例化Object1,我这样做:
object1 = new[Object1][]
Run Code Online (Sandbox Code Playgroud)
输出是:
Out: object$13
Run Code Online (Sandbox Code Playgroud)
这里,对象$ 13是一个临时变量.我想要的是,当没有对这个临时变量的引用时,应该自动删除它.但它没有按预期工作.我已经确定了以下问题:
In: y = Module[{x}, x[1] = 2; x]
Out: x$117
In: FullDefinition[y]
Out: y = x$117
Attributes[x$117] = {Temporary}
x$117[1] = 2
Run Code Online (Sandbox Code Playgroud)
由于y持有x 117美元的参考,因此x $ 117尚未被删除.现在让我们通过将y的值设置为1来删除引用:
In: y = 1;
Run Code Online (Sandbox Code Playgroud)
但是,x $ 117仍然在这里:
In: Definition[x$117]
Out: Attributes[x$117] = {Temporary}
x$117[1] = 2
Run Code Online (Sandbox Code Playgroud)
但我预计变量将被删除,因为它不再被引用.从Mathematica 的手册中,它说:
如果不再引用临时符号,则将其删除:
那么,这是Mathematica的一个错误吗?或者有任何解决方法吗?我正在使用Mathematica 7.0.非常感谢你.