我需要在JTextArea中显示ArrayList的元素,每个元素后面都有一行新行。然而,代码现在将所有元素显示在一行中,用逗号分隔;以及开括号和闭括号"[]"。现在的代码如下:
public void imprimirLista(ArrayList<Ausente> a) {
for (Ausente s: a) {
txtAreaAusentes.setText(a.toString());
}
}
我如何在没有逗号和刹车的情况下打印它们?
您还可以附加文本:
public void imprimirLista(ArrayList<Ausente> a) {
for (Ausente s : a) {
txtAreaAusentes.append(s.toString() + "n"); // New line at the end
}
}
尝试使用txtAreaAusentes.append(s.toString());
我要注意的一件事是,这将附加到该字段中的任何现有文本。如果你想清除该文本,那么我会将功能更改为
public void imprimirLista(ArrayList<Ausente> a) {
StringBuilder sb = new StringBuilder();
for (Ausente s: a) {
sb.append(s.toString());
}
txtAreaAusentes.setText(sb.toString());
}
您应该在输出中用s
替换a
:
String output = "";
for (Ausente s: a) {
output += s.toString() + "n";
}
txtAreaAusentes.setText(output);
还要先构建输出String
,然后将文本区域设置为output
String
。如果你想提高效率,你可以使用StringBuilder
。。。