[英]Java: showing the output of a separate for loop as an extra column shown in a console
在我的項目中,我有一個嵌入的 for 循環,它輸出數據,其中每個類別顯示項目並在每個項目中顯示其屬性,因此實際上我生成的輸出是控制台中的 3 列數據(標題:類別/項目/屬性)顯示此數據的 for 循環如下所示(變量在方法中的前面設置):
for... (picks up each category)
for...(picks up items in category)
for (String propertyName : item.getPropertyNames()) {
out.println(category.getName() + "\t"
+ itemDesc.getName() + "\tProperty:"
+ propertyName);
}
}
}
該項目的目的是提供系統中設置組件屬性的更動態文檔。 ( /t 可以在控制台上將它們分成單獨的列,甚至在我應該選擇在打印流上設置文件的excel電子表格中的文件中(也在此方法的開頭。))
現在的問題是,在上面指定的 for 循環之后,我生成了另一個與數據分開的 for 循環,但顯示了組件中涉及的所有函數和運算符的列表:
//Outside the previous for loops
for (Function function : Functions.allFunctions) {
out.println(function.getSignature());
}
我想要的是將此列表設置為第 4 列,但 for 循環的定位及其設置方式使其固定在具有類別的第一列上。 我不能在屬性名稱之后添加它,因為這些函數對於列表中的所有內容都更通用,並且可能存在我試圖避免的函數重復。 有沒有辦法將它設置為第四列? 無法找到足夠的研究來指定我在這里尋找的內容。 希望這是有道理的。
一種解決方案,如果輸出的總量足夠小以適合內存,則只需將所有數據保存到String
的ArrayList
中,並在最后全部輸出。
List<String> myList = new ArrayList<String>();
for... (picks up each category)
for...(picks up items in category)
for (String propertyName : item.getPropertyNames()) {
myList.add(category.getName() + "\t"
+ itemDesc.getName() + "\tProperty:"
+ propertyName);
}
}
}
int i = 0;
// Here we assume that the total lines output by the previous set of loops is
// equal to the total output by this loop.
for (Function function : Functions.allFunctions) {
out.println(myList.get(i) + "\t" + function.getSignature());
i++;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.