如何使用Java中的toString方法将int数组转换为String 我正在尝试使用该toString(int[])方法,但我认为我做错了:http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Arrays.html#toString(INT [])我的代码: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的文档中一样:字符串表示由数组元素的列表组成,用方括号括起来(“[]”)。相邻元素由字符“,”(逗号后跟空格)分隔。
3 回答

临摹微笑
TA贡献1982条经验 获得超2个赞
System.out.println(array.toString());
应该:
System.out.println(Arrays.toString(array));

aluckdog
TA贡献1847条经验 获得超7个赞
Arrays.toString的内容是它在输出中包含“[”和“]”和“,”。因此,我只需使用正则表达式将它们从这样的outout中删除
String strOfInts = Arrays.toString(intArray).replaceAll("\\[|\\]|,|\\s", "");
现在你有一个String,可以解析回来java.lang.Number
,例如,
long veryLongNumber = Long.parseLong(intStr);
或者你可以使用java 8流,如果你讨厌正则表达式,
String strOfInts = Arrays .stream(intArray) .mapToObj(String::valueOf) .reduce((a, b) -> a.concat(",").concat(b)) .get();
添加回答
举报
0/150
提交
取消