插入int时字符串数组中的[Java]空值
我正在声明一个[2][5]的字符串数组。在那之前一切都很好。我可以把东西插入数组 但是当我在数组中插入一个整数值时,“null”关键字会自动添加到该整数值之前 假设我在arrayName[1][0]中插入了5。当我以后打印它时,我得到“null5”。这很奇怪插入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您将
你们到底认为问题出在哪里。谢谢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)也不是代码>。谢谢,朋友。这正是我需要的。谢谢,朋友,这正是我需要的。谢谢。