我想按特定顺序打印一个数组,但我不知道谷歌是如何帮助我的。
输出:
[PR001, Slinger 6.20, 135, 380, PR002, Strip 1.07, 93, 470, PR003, Hal, 301, 965, PR004, Zolder, 23, 679]
预期产出:
PR001 Slinger 6.20 135 380
PR002 Strip 1.07 93 470
PR003 Hal 301 965
PR004 Zolder 23 679
我从SQL查询中获取ArrayList:
public ArrayList<String> selectAllePrinters() {
ArrayList<String> printers = new ArrayList<>();
try {
Connection con = SimpleDataSource.getConnection();
PreparedStatement stat = con.prepareStatement("SELECT * FROM printer;");
ResultSet result = stat.executeQuery();
while (result.next()) {
printers.add(result.getString("printerid"));
printers.add(result.getString("printernaam"));
printers.add(result.getString("aantalkleur"));
printers.add(result.getString("aantalZwart"));
}
result.close();
stat.close();
return printers;
} catch (SQLException e) {
System.out.println(e);
return null;
}
}
我该怎么做?提前谢谢!
答案 0 :(得分:0)
这几乎你需要的东西:-)使用标签
List<String> l = new ArrayList<String>(Arrays.asList(ss)){;
@Override
public String toString(){
Iterator<String> it = iterator();
if (! it.hasNext())
return "";
StringBuilder sb = new StringBuilder();
int i = 0;
for (;;) {
i++;
String e = it.next();
sb.append(e);
if (! it.hasNext())
return sb.toString();
sb.append('\t');
if (i%4==0){
sb.append("\n");
}
}
}
};
System.out.println(l);
要在所需的列之间保持完美的间距,必须迭代所有元素两次,以找到每列的最大宽度。
但是如果标签对你来说没问题(也许你只是想复制并粘贴到电子表格中),你可以尝试这种方式。