这是我的代码:
for (Article a : articles) {
boxNumber = magazine.getFfd().searchArticleInBox(a);
if (boxNumber >= 3) {
text = text + "Place box " + boxNumber + "\n";
}
}
textArea.append(text);
它确实可以工作:
Place box 3
Place box 3
Place box 3
Place box 3
Place box 4
Place box 4
这不是我想要的。我希望有人能告诉我,当数字改变时我只能一次得到它,所以我得到:
Place box 3
Place box 4
最佳答案
保留最后一个值并对照它:
int last = 0;
for (Artikel a : artikelen) {
doosnummer = magazijn.getFfd().zoekArtikelInDoos(a);
if (doosnummer >= 3) {
if (last != doosnummer) {
last = doosnummer;
text = text + "Plaats doos " + doosnummer + "\n";
}
}
}
textArea.append(text);
请注意,将
String
附加到单个StringBuilder
对象而不是使用String
串联会更有效,因为这会继续创建新的String
对象:StringBuilder text = new StringBuilder();
int last = 0;
for (Artikel a : artikelen) {
doosnummer = magazijn.getFfd().zoekArtikelInDoos(a);
if (doosnummer >= 3) {
if (last != doosnummer) {
last = doosnummer;
text.append("Plaats doos ");
text.append(doosnummer);
text.append("\n");
}
}
}
textArea.append(text.toString());