2012-02-08 8 views
0

私は文字列のベクトルを持っていて、それらをJTextAreaに出力したいとしましょう。どんな方法を使うべきですか?私が知っているJFrameのJTextAreaにベクトルを出力する方法は?

Vector temp = new Vector(); 
String temp = list.getText(i) + '\n'; 
textArea.setText(temp); 

は動作しません:

私はforループを使用して考えていました。私はappend()が関連する何かをしていると聞いたが、何をすべきか分からなかった。任意のヒント?

+2

同じ名前のスコープ内に2つの変数があります。 – Jeffrey

答えて

1

まあ、あなたは近くです。私は...あなたは何を意味するのかたと思う

Vector<String> list; 
... 
String tmp = ""; 
for(int i = 0 ; i < list.size(); i++) 
{ 
    tmp = tmp + list.get(i) + "\n"; 
} 
textArea.setText(tmp); 

そして、あなたの他のコメントに関して、はい、文字列値を追加するループを実行するたび、あなたは文字列ではなくStringBufferを使用したいとしています。..

Vector<String> list; 
... 
StringBuffer tmp = new StringBuffer(); 
for(int i = 0 ; i < list.size(); i++) 
{ 
    tmp.append(list.get(i) + "\n"); 
} 
textArea.setText(tmp.toString()); 
1

最初に、Vectorは同期コンテナです。これはスレッドセーフであることを意味します。複数のスレッドを使用してアクセスする予定がない限り、ちょっとしたことはありません。ちょうどArrayListを使う方が良いでしょう。あなたは、Javaの本当に古代のバージョンを使用している場合を除き

は、第二に、あなたは、あなたがparametrisedコンテナを使用していることを確認したいと思うつまり:

List<String> list = new ArrayList<String>(); 

JTextAreaに上の方法を確認するには、 Java APIはあなたの友人です。

また、すべての要素を追加するには、コンテナをループする必要があります。

関連する問題