Java 拆分选定的jList值并将其移动到jTable行(SWING)

Java 拆分选定的jList值并将其移动到jTable行(SWING),java,swing,jtable,substring,jlist,Java,Swing,Jtable,Substring,Jlist,嗨,我正在尝试制作一个程序,将选定的值从列表移动到表中。我可以将整个列表值添加到一行,但我要做的是将列表值拆分为一组字符串,并将它们设置为表中的不同行 列表值如下所示: 123 Test St LA 1823 Yes 456 Test Dr NY 12345 No 该列表从文本字段(Address、State、Zip、For Sale)中获取值,并将其全部设置为一行由空格分隔的字符串 在表中,我有4行: |Address|State|Zip| For Sale| |------ +-----+

嗨,我正在尝试制作一个程序,将选定的值从列表移动到表中。我可以将整个列表值添加到一行,但我要做的是将列表值拆分为一组字符串,并将它们设置为表中的不同行

列表值如下所示:

123 Test St LA 1823 Yes
456 Test Dr NY 12345 No
该列表从文本字段(Address、State、Zip、For Sale)中获取值,并将其全部设置为一行由空格分隔的字符串

在表中,我有4行:

|Address|State|Zip| For Sale|
|------ +-----+---+---------|
|       |     |   |         |  
因此,为了做到这一点,我必须按空格从列表中拆分字符串值,但由于地址文本字段包含空格(即123 Test St),与其他文本字段不同,我必须找到从列表中拆分字符串的方法,以便我可以设置地址、状态、邮政编码和待售值

以下是我的代码片段:

 private void addListActionPerformed(java.awt.event.ActionEvent evt) {                                          

    home.setAddress(address.getText());
    home.setState(state.getText());
    home.setZip(zip.getText()); 
    home.setSale(forSale.getText());

    String concat = home.getAddress() + " " +
                    home.getState() + " " +
                    home.getZip() + " " +
                    home.getSale();


    addVal(concat);

        address.setText("");    
        state.setText("");
        zip.setText("");
        forSale.setText("");

}    

private void addVal(String str) {
    jList1.setModel(dm);
    dm.addElement(str);
}

    private void addToTableActionPerformed(java.awt.event.ActionEvent evt) {                                            
    String s = jList1.getSelectedValue();
    //Split and set values and add to table
}  
我可以使用:
String[]spaces=s.split(“”)
,但是我需要处理地址值,因为它也包含多个空格,有更简单的方法吗?如有任何建议,将不胜感激。谢谢

  • 用主对象(而不是连接的字符串)填充JList
  • 使用自定义列表单元渲染器显示从列表中的主对象派生的连接字符串
  • 然后,当选择JList中的一个项目时,您得到的是一个完整的主对象,而不是字符串,创建JTable行应该很简单