2013-05-07 37 views
1

我想在showMessageDialog方法的同一句子中輸出變量的所有值,我知道我可以使用JList將它們全部放在一個屏幕中,但我寧願有這樣的東西:3,4,2 ,62,12,41,5如何在單個JOptionPane方法中輸出數組的所有值?

我可以做類似

for(int x = 0;x < array.length;x++){ 
JOptionPane.showMessageDialog(null,array[x] + ",");} 

但是,這將需要超過一分屏,這不是我想要的。

此外,也許它可以用JLabel來代替,如果它更容易,我會適應自己。

+0

你能不能先建的字符串,然後調用'JOptionPane.showMessageDialog'? – 2013-05-07 08:15:24

+0

使用'StringBuilder'連接所有字符串,然後顯示結果'String' – 2013-05-07 08:47:02

回答

0

先做串聯:

String s = Arrays.toString(array); 
s = s.substring(1,s.length-1); 
JOptionPane.showMessageDialog(null,s); 
+0

@GuillaumePolet,更正。 – DeadlyJesus 2013-05-07 08:58:05

0

這樣做的問題是,如果數組足夠大,那麼它不會在屏幕上適合反正。在消息框中顯示它可能對用戶不是有用的。

如果您需要以可管理的方式顯示任意大型數組,那麼我寧願編寫一個小對話框類,這不是很多工作,然後使用可滾動的textarea代替。

這樣你就可以用任何你想要的方式來準備它。然而,從你的簡短樣本來看,如果你總是有少量的物品還不是很清楚,在這種情況下,創建字符串應該足夠了。

1

如圖所示here,請使用StringBuilder構建陣列的面向行的表示形式,並將其顯示在JScrollPaneJOptionPane中。滾動窗格的首選大小可以是任意的。

image

相關問題