使用 JList
Posted
技术标签:
【中文标题】使用 JList【英文标题】:Working with JList 【发布时间】:2014-02-28 20:36:56 【问题描述】:我有 JList 和 JList 模型,其中包含数据库字段的值(student
表)。
我想从 JList 中获取所有数据并将数据存储在 String 变量调用 mysql
我希望数据像这样存储: -“选择 ” - 然后来自 jList 的数据用逗号分隔 -“来自”
我该怎么做?
这是我到目前为止所做的:
ListModel a = myList.getModel();
String obj = null;
String obj2 = null;
System.out.print("SELECT ");
for (int i = 0; i < a.getSize(); i++)
if (i == a.getSize() - 1)
obj = (String) a.getElementAt(i);
System.out.print(obj);
else
obj2 = a.getElementAt(i) + ",";
System.out.print(obj2);
System.out.print(" FROM ");
我把代码改成了这个
ListModel a = list2.getModel();
String obj = null;
String obj2 = null;
// System.out.print("SELECT ");
for (int i = 0; i < a.getSize(); i++)
if (i == a.getSize() - 1)
obj = (String) a.getElementAt(i);
// System.out.print(obj);
else
obj2 = a.getElementAt(i) + ",";
// System.out.print(obj2);
System.err.println("This is obj2 "+obj2 +"This is obj "+ obj);
// System.out.print("SELECT "+obj2+obj+" FROM ");
【问题讨论】:
要明确,您希望输出为:“SELECT ele1, ele2, ..., elen FROM”? ele1 到 elen 是您列表中的选定元素? 是的,这正是我想要的 到目前为止你的代码有什么问题? 我想在同一个打印语句中同时打印 obj 和 obj2 ,但是如果我将 system.out.print 放在 if 语句之外我不能得到只有 System.err.println("这是obj2"+obj2+"这是obj"+obj);然后我得到类似这样的结果,没有 SELECT 和 FROM 这是 obj2 STUDENT_ID,这是 obj null 这是 obj2 STUDENT_ID,这是 obj STUDENT_NAME “这是obj2”从何而来? 【参考方案1】:您是否尝试过将它们添加到字符串中,然后在最后输出?所以像
String text = "SELECT "
然后添加其他字符串
text =+ "whatever"
【讨论】:
是的,我试过只从 JList 模型中得到第一个和最后一个元素 您没有将 obj2 转换为字符串是否有原因? 你应该得到多少元素?看起来没有什么不对。你确定你应该从模型中得到两个以上的元素吗? 是的,我应该得到 5 个元素,但我只得到第一个和最后一个元素.. 我不确定我哪里出错了我认为代码应该可以正常工作,但不是 尝试输出模型的大小以确保。【参考方案2】:当您想打印“SELECT ele,ele,ele,ele FROM”字符串时,您可能需要以下内容:
ListModel a = myList.getModel();
System.out.print("SELECT ");
for (int i = 0; i < a.getSize(); i++)
System.out.print(a.getElementAt(i);
if (i < a.getSize() - 1)
System.out.print(",");
System.out.print(" FROM ");
【讨论】:
以上是关于使用 JList的主要内容,如果未能解决你的问题,请参考以下文章