如何使用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
提交
取消