Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java,如果它没有';不存在_Java - Fatal编程技术网

Java,如果它没有';不存在

Java,如果它没有';不存在,java,Java,在谷歌搜索的时候,我在上面找不到任何东西 所以 我只想在数组不存在的情况下创建它 编辑:我的意思是没有初始化 我知道如何检查数组中的值 应该很简单,但我被卡住了 致意 static long f(long n) { int m = (int)n; **if (serie == null) { long[] serie = new long[40]; }** if (n == 0) { return 0; } else if

在谷歌搜索的时候,我在上面找不到任何东西 所以 我只想在数组不存在的情况下创建它

编辑:我的意思是没有初始化

我知道如何检查数组中的值

应该很简单,但我被卡住了

致意

static long f(long n) {
    int m = (int)n;
    **if (serie == null) {

   long[] serie = new long[40];
    }**
    if (n == 0) {
        return 0;
    }
    else if (n==1) {
        return 1;
    }
    else {
        long asdf = f(n-1)- 2*(f(n-2)) + n;
        return asdf;
    }
}
诸如此类 一个递归函数,我想将值保存在数组中

您要查找的是:

if (values == null)
{
    values = new int[10];
}
或者类似的?如果没有,请编辑您的问题以提供更多信息

编辑:好的,根据更新的问题判断,我想你应该有两种方法:

static long f(long n)
{
    return f(n, new long[40]);
}

static long f(long n, long[] serie)
{
    // Code as before, but when you recurse, pass in serie as well
}

(请注意,您当前的代码根本没有使用
serie

您正在尝试使用
serie
数组,但尚未声明该数组。首先声明它,然后根据需要使用它。

好的,如果在java中使用变量,它会被初始化。因此,您可能需要检查该变量(本例中的数组)是否为null。不仅如此,您还可以而且可能应该检查它是否是一个数组。数组是java中的对象。因此,您可以对阵列执行以下操作:

if(!obj.getClass().isArray())

你说的“如果它还不存在”是什么意思?如果它是空的?空?那么您指的是哪个数组?您能显示一些代码吗?是的,但使用它我总是会得到以下错误:找不到符号符号:变量序列位置:类Bsp17 if(序列==null){ ^ 1 error@Franz:如果不查看上下文的其余部分,则很难对其进行诊断。是的,我知道,我只是将数组位放进去,以显示问题和函数的内容,其中关于找不到symbol symbol:variable serie location:class Bsp17 if(serie==null){^1错误,总是这个错误这是一个编译器错误,这意味着
serie
数组超出了范围。是的,但是我只想在它还没有被声明的情况下声明它,或者不是possible@Franz:您应该能够通过查看代码来判断它是否已声明。您不能“选择性地”声明一个变量。@Franz-你误解了一个核心编程概念。在尝试使用它之前,必须声明一些东西。否则你将得到一个编译器错误。
if(!obj.getClass().isArray())