如何将值列表从 table 导入到字符串行

How to import the list of value from table to string line

我在 java 中创建了一个 table,它有一个列和许多行,我还有一个字符串行,我想在我的字符串行中导入我的值列表: 我有 运行 我的代码,结果是这样的:

begining of line [item1] end of line
begining of line [item2] end of line
begining of line [item3] end of line
begining of line [item4] end of line

但我正在寻找这样的结果:

begining of line    [item1], 
                    [item2], 
                    [item3],
                    [item4]   end of line

my table

这是我的代码:

DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
for (int i=0;i<model.getRowCount();i++){
        String b = " ["+(jTable1.getValueAt(i,0)).toString()+"] ";

        String text="begining of line"+b+"end of line";
    System.out.println(text);
}

我是 java 的新人,谢谢

您可以在 for 循环之前开始文本,在 for 循环中将值 "begining of line" 添加到文本中,然后在 for 循环之后向其添加 "end of line"。您可以使用 + 运算符连接字符串,或者如果您想提高效率,可以使用 Stringbuilder class.

试试这个代码:

    String beginning= "beginning of line";
    String emptySpaces = new String(new char[begining.length()]).replace("[=10=]", " "); // Create empty spaces with the same length of the begining sentence
    StringBuilder builder = new StringBuilder();
    for (int i = 0; i < model.getRowCount(); i++) {
        final String first = (i == 0) ? begining : emptySpaces;
        builder.append(first).append(" [").append(jTable1.getValueAt(i,0).toString()).append("]");
        final String last = (i == model.getRowCount() - 1) ? " end of line" : ",\n";
        builder.append(last);
    }
    System.out.println(builder.toString());

我使用字符串生成器来避免字符串创建性能问题

它将显示预期的结果

beginning of line [item1],
                  [item2],
                  [item3],
                  [item4],
                  [item5] end of line