如何在Java中使用toString方法将int数组转换为字符串

2022-08-31 07:12:24

我正在尝试使用该方法,但我认为我做错了:toString(int[])

http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Arrays.html#toString(国际)

我的代码:

int[] array = new int[lnr.getLineNumber() + 1];
int i = 0;

System.out.println(array.toString());

输出为:

[I@23fc4bec

我也尝试像这样打印,但是:

System.out.println(new String().toString(array));  // **error on next line**
The method toString() in the type String is not applicable for the arguments (int[])

我从更大更复杂的代码中取出了这些代码,但如果需要,我可以添加它。但这应该提供一般信息。

我正在寻找输出,就像在Oracle的文档一样:

字符串表示形式由数组元素的列表组成,括在方括号 (“[]”) 中。相邻元素由字符“, ”(逗号后跟空格)分隔。


答案 1

你想要的是方法:Arrays.toString(int[])

import java.util.Arrays;

int[] array = new int[lnr.getLineNumber() + 1];
int i = 0;

..      

System.out.println(Arrays.toString(array));

对于每个不同的原始java类型,都有一个静态帮助器方法;int[] 的那个是这样说的Arrays.toString

public static String toString(int[] a)

返回指定数组内容的字符串表示形式。字符串表示形式由数组元素的列表组成,括在方括号 () 中。相邻元素由字符分隔(逗号后跟空格)。元素由 转换为字符串。如果 为空,则返回。"[]"", "String.valueOf(int)"null"a


答案 2
System.out.println(array.toString());

应该是:

System.out.println(Arrays.toString(array));