插入int时字符串数组中的[Java]空值

插入int时字符串数组中的[Java]空值,java,arrays,null,Java,Arrays,Null,我正在声明一个[2][5]的字符串数组。在那之前一切都很好。我可以把东西插入数组 但是当我在数组中插入一个整数值时,“null”关键字会自动添加到该整数值之前 假设我在arrayName[1][0]中插入了5。当我以后打印它时,我得到“null5”。这很奇怪 你们到底认为问题出在哪里。谢谢C@N.我看到这种情况的唯一方法是使用+=: String[] a = new String[1]; a[0] += 1; System.out.println(a[0]); 因为如果你只使用a[0]=1您将

我正在声明一个[2][5]的字符串数组。在那之前一切都很好。我可以把东西插入数组

但是当我在数组中插入一个整数值时,“null”关键字会自动添加到该整数值之前

假设我在arrayName[1][0]中插入了5。当我以后打印它时,我得到“null5”。这很奇怪


你们到底认为问题出在哪里。谢谢C@N.

我看到这种情况的唯一方法是使用+=:

String[] a = new String[1];
a[0] += 1;
System.out.println(a[0]);
因为如果你只使用
a[0]=1您将得到编译错误。
获取null5的原因是将字符串“null”与5串联:

所以问题是你想要实现什么?只是设置值还是添加值

如果您只想设置它,请使用:

String[] a = new String[1];
a[0] = Integer.toString(1);
System.out.println(a[0]);
如果确实要附加到它,请执行以下操作:

String[] a = new String[1];
if (a[0] == null) {
    a[0] = Integer.toString(1);
} else {
    a[0] += 1;
}
System.out.println(a[0]);

我看到这种情况的唯一方法是使用+=:

String[] a = new String[1];
a[0] += 1;
System.out.println(a[0]);
因为如果你只使用
a[0]=1您将得到编译错误。
获取null5的原因是将字符串“null”与5串联:

所以问题是你想要实现什么?只是设置值还是添加值

如果您只想设置它,请使用:

String[] a = new String[1];
a[0] = Integer.toString(1);
System.out.println(a[0]);
如果确实要附加到它,请执行以下操作:

String[] a = new String[1];
if (a[0] == null) {
    a[0] = Integer.toString(1);
} else {
    a[0] += 1;
}
System.out.println(a[0]);

如果您使用
+=
添加项目,那么我认为这可能会发生。使用
String.valueOf()

如果您使用
+=
添加项目,那么我认为可能会发生这种情况。使用
String.valueOf()

如果您正在使用任何字符串变量,比如说myString(作为默认值为null的实例变量)并执行以下操作-

int i=5;
myString = myString+i;
因为您没有初始化字符串mystring,所以它会得到默认值null,并加上i


这可能是一种情况。

如果您使用任何字符串变量,比如说myString(作为默认值为null的实例变量),并执行以下操作-

int i=5;
myString = myString+i;
因为您没有初始化字符串mystring,所以它会得到默认值null,并加上i


这可能是其中一种情况。

请您发布一些代码好吗?为什么还要在字符串类型数组中插入int?问题很明显:为什么要在字符串数组中插入整数?调用
array[n][m]=String.valueOf(value)
。您肯定需要说明如何将5插入数组中<代码>阵列名称[1][0]=5不起作用。
arrayName[1][0]=新整数(5)也不是
。你能发布一些代码吗?为什么还要在字符串类型数组中插入int?问题很清楚:为什么要在字符串数组中插入整数?调用
array[n][m]=String.valueOf(value)
。您肯定需要说明如何将5插入数组中<代码>阵列名称[1][0]=5不起作用。
arrayName[1][0]=新整数(5)也不是。谢谢,朋友。这正是我需要的。谢谢,朋友,这正是我需要的。谢谢。