2014-03-24 163 views
0

如何從2d打印無括號的數組。基本上,我第一次添加具有新值的數組到2D與:打印無括號的對象陣列

books=(Object[][]) Arrays.copyOf(row,2); 

,而書籍已經被初始化爲二維數組:

static Object[][] books=new Object[1][1]; 

但是當我嘗試打印從書本中的第一行搭配:

System.out.println(Arrays.deepToString(books[0])+" "); 

它打印我括號和逗號

[asds,asdas,223] 

像是假設要做的。

我該如何刪除這些?

謝謝!

+1

只是循環,並建立任何你想要的方式串?簡單的例子:'String str =「」; for(int i = 0; i

+0

如果你不想默認格式化,你應該在你的數組上迭代並自己進行格式化。要做到這一點,請按照@ Lavekush的回答。 – Joffrey

+0

我對JAVA不熟悉。我在搜尋時得到了。這可能會幫助你。 http://stackoverflow.com/questions/4389480/print-array-without-brackets-and-commas – Arun

回答

0

你可以試試這個

String output ; 
    for(String s: books[0]){ 
     output = output +s+ ","; 
    } 
output = output.substring(0, output.length()-1); 
System.out.print(output); 
+1

根據矩陣中包含的項目數量,「StringBuilder」可能更合適。 – Joffrey

+0

毫無疑問,使用'StringBuilder'可以提高性能。 – guptakvgaurav

1

您可以使用replaceAll和簡單:

myStr = myStr.replaceAll("\\[|\\]", ""); 
1

通過自己動手試試這個

StringBuilder builder = new StringBuilder(); 

    for (String value : publicArray) { 

     builder.append(value +","); 

     // or builder.append(value).append(","); 
    } 

    String text = builder.toString(); 
    System.out.print(text); 
+2

因爲你已經有了一個'StringBuilder',你應該再次使用'append()'而不是'+'。這將是'builder.append(value).append(「,」);'。這樣,你可以避免隱式分配一個新的'StringBuilder'。 – Joffrey