gpt4 book ai didi

java - 如何从java中的组合框中删除Ljava.lang.String?

转载 作者:行者123 更新时间:2023-12-01 16:52:44 24 4
gpt4 key购买 nike

在下面的代码中,我试图访问数据库的特定行并将其所有元素放入组合框中,但组合框显示 [Ljava.lang.String,... 是而不是字符串值。请帮助在组合框中显示字符串值。

 void defaulters()
{
try
{
Connection con = DriverManager.getConnection(url, user, password);
final Statement stmt = con.createStatement();
ArrayList <String[]> result = new ArrayList<String[]>();
ResultSet rs = stmt.executeQuery( "SELECT c_name FROM customers" );
int columnCount = rs.getMetaData().getColumnCount();
while(rs.next())
{
String[] row = new String[columnCount];
for (int i=0; i <columnCount ; i++)
{
row[i] = rs.getString(i + 1);
}

result.add(row);
}

final JComboBox cb=new JComboBox();
JFrame f=new JFrame();
JLabel amt= new JLabel("Pending Amount: ", JLabel.RIGHT);
JLabel cid= new JLabel("Customer ID: ", JLabel.RIGHT);
final JTextField pamt = new JTextField(10);
cb.setModel(new DefaultComboBoxModel(result.toArray()));
JButton sumbit = new JButton("Sumbit");
f.add(cid);f.add(cb);f.add(amt);f.add(pamt);f.add(sumbit);
f.setSize(400, 400);
f.setLayout(new FlowLayout());
f.setTitle("Defaulters");
f.setVisible(true);
String row = (String)cb.getSelectedItem();

sumbit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
try {
stmt.executeUpdate
("insert into buyers values('"+cb.getSelectedItem()+"','"+pamt.getText()+"');");
} catch (SQLException e1) {
e1.printStackTrace();
}
System.out.println("Success");
};
});


}

最佳答案

此处:cb.setModel(new DefaultComboBoxModel(result.toArray())); 您调用result.toArray(),它又是一个String [][] 数组。您会在组合框中看到这一点,因为 Java 添加了 String[] 的字符串表示形式,而不是实际内容。

关于java - 如何从java中的组合框中删除Ljava.lang.String?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36680071/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com