我想写一个程序,存储5首歌曲标题在数组列表"cdNames",并输出在一个文本区域,每行一个标题,共5行。
我使用.setText
方法和for loop
来尝试从ArrayList中提取5个元素以显示5首歌曲标题,而不必显式地将每个标题写出来。
下面是处理JTextArea的部分代码:
private void btnDisplayMouseClicked(java.awt.event.MouseEvent evt) {
for (int i = 0; i<cdNames.size();i++){
txtOutputBox.setText(cdNames.get(i));
问题在于文本区域中唯一显示的是数组列表中的最后一个元素。
指数# 4,即滚石乐队-给我避难所。
我认为setText方法覆盖了前面的元素并在最后停止,而不是在新行上打印每个标题。
我认为我的问题在于我对文本区域如何显示文本的知识不够。
我是java新手,所以请尽量简单地回答我的问题。
您必须使用append()或insert(),参见JTextArea
示例(如果你的数组列表有字符串)
for (String cdName: cdNames) {
txtOutputBox.append(cdName);
}