小编Tom*_*Tom的帖子

使用反射和数组参数构造类的IllegalArgumentException

运行以下代码:

public class Test {

    public Test(Object[] test){

    }

    public static void main(String[] args) throws Exception{
            Constructor cd = Test.class.getConstructor(Object[].class);
            Object[] objs = {1, 2, 3, 4, 5, 6, 7, 8};
            cd.newInstance(objs);
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到错误:

Exception in thread "main" java.lang.IllegalArgumentException: wrong number of arguments
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
    at groupd.poker.utils.tests.ai.nqueens.Test.main(Test.java:17)
Run Code Online (Sandbox Code Playgroud)

为什么是这样?

java arrays reflection

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

波浪号(〜)字符在这里做什么

可能重复:
波形符(〜)在C#中的含义是什么?

class ResourceWrapper
{
    int handle = 0;
    public ResourceWrapper()
    {
        handle = GetWindowsResource();
    }
    ~ResourceWrapper()                     //this line here
    {
        FreeWindowsResource(handle);
        handle = 0;
    }
    [DllImport("dll.dll")]
    static extern int GetWindowsResource();
    [DllImport("dll.dll")]
    static extern void FreeWindowsResource(int handle);
}
Run Code Online (Sandbox Code Playgroud)

波浪号在指示的线上做了什么.

我认为它是按位NOT运算符,事实上我并不真正理解那里的整个块,(注释行和后面的括号blovk),它不是一个方法,或一个参数或任何东西,它是什么为什么之前有波浪号呢?

c# tilde

7
推荐指数
1
解决办法
3750
查看次数

由于C中缺少内存而导致分段错误

这段代码在一半的时间里给我分段错误:

int main(int argc, char **argv) {
    float test[2619560];
    int i;
    for(i = 0; i < 2619560; i++)
        test[i] = 1.0f;
}
Run Code Online (Sandbox Code Playgroud)

我实际上需要分配一个更大的数组,是否有某种方式允许操作系统允许我获得更多的内存?

我使用的是Linux Ubuntu 9.10

c linux ubuntu memory-management segmentation-fault

7
推荐指数
2
解决办法
7517
查看次数

驱动程序是什么意思?

引用了Algorithms for Java(sedgwick 2003)p.135:"我们在开发或调试adt iplementations时通常使用驱动程序"驱动程序是什么意思?谷歌只是给了我很多关于编程驱动程序的信息,显然没有相关性

theory

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

如何使用不同的名称调用相同的程序?

我指导你到Kernighan&Ritchie练习7.1

编写一个程序,根据调用的名称将大写字母转换为小写字母或小写字母为大写,...

如何使用不同的名称调用相同的程序?

我正在使用Linux,因此我只需输入以下内容即可调用已编译的程序:

$./ a.out的

我应该做些什么呢?

c linux

6
推荐指数
1
解决办法
266
查看次数

计算链表中可能为循环的节点数

这是问题所在,它来自Sedgwick在Java中出色的算法(q 3.54)

给定链接到单链表中不包含空链接的节点(即每个节点链接到自身或列表中的另一个节点)确定不同节点的数量而不修改任何节点并使用不超过常量内存空间.

你怎么做呢?扫描列表一次使用野兔和乌龟算法来确定它是否是任何方式的圆形,然后再次扫描以确定列表变为圆形的位置,然后再次扫描计算到这个位置的节点数?对我来说听起来有点蛮力,我想有更优雅的解决方案.

algorithm linked-list

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

*在linux命令行上

我在C中制作一个小计算器,我想将简单的算术公式传递给我的程序.但它真的不喜欢我将字符'*'传递给我的程序.为什么不?如何在不改变星号的情况下解决这个问题呢?谢谢

c linux

5
推荐指数
3
解决办法
439
查看次数

是否可以在非root用户手机上添加属性?

对于我的非root设备(我不允许root,所以我需要找到另一种方法),如果我这样做的话

adb shell setprop MY_PROP 1
Run Code Online (Sandbox Code Playgroud)

其次是

adb shell getprop MY_PROP
Run Code Online (Sandbox Code Playgroud)

我得到一个空白.

我该如何设置房产?

android adb seandroid

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

在c ++中将时间附加到字符串时出现访问冲突错误

请使用以下代码:

#inlcude <iostream>
#include <time.h>
using namespace std;

int main(int argc, char* argv[])
{
    time_t t;
    time(&t);

    string s = "file" + t;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

在线

string s = "file" + t
Run Code Online (Sandbox Code Playgroud)

我收到访问冲突错误.

如果我改为:#inlcude using namespace std;

int main(int argc, char* argv[])
{
    time_t t;
    time(&t);
    int x = t;

    string s = "file" + x;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我仍然得到同样的错误.怎么了?当然将int附加到字符串不能抛出访问冲突?

c++ string initialization append

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

Lua三元运算符 - 多个变量

假设我想在某个条件为真时为两个变量分配两个值,如果所述条件为假则为两个不同的值.我会假设它会这样做:

a, b = 4 > 5 and 1, 2 or 3, 4
Run Code Online (Sandbox Code Playgroud)

然而,这指定为假,b为2.如果我们有:

a, b = 4 < 5 and 1, 2 or 3, 4
Run Code Online (Sandbox Code Playgroud)

这正确地指定a为1,b为2.

我在这里错过了什么,如何让"三元运算符"像我期望的那样工作?

lua ternary-operator

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