繁体   English   中英

JList从jlist检索数据

[英]JList retrieving data from a jlist

如何从JList中获得3个单独的字符串? 如果我使用model.elementAt我会得到字符串,但它们不会彼此分开。

  • 数据如何存储在JList中?
  • 我是否可以使用数组将数据彼此分开?
  • 数据存储在数组中吗?
while(resultaat.next()){
    model.addElement(resultaat.getString(1) + "  "
        + resultaat.getString(2) + "  "
        + resultaat.getString(3));
}

我使用该行代码将一串字符串添加到JList模型中。 字符串来自mysql数据库。

创建某种可以表示所需值的容器对象,该对象能够以所需格式显示值...

public class ListObject {
    private String[] values;
    public ListObject(String... values) {
        this.values = values;
    }

    public int size() {
        return values == null ? 0 : values.length;
    }

    public String get(int index) {
        return values == null ? null : values[index];
    }

    public String toString() {
        StringBuilder sb = new StringBuilder(64);
        if (values != null) {
            for (String value : values) {
                if (sb.length() > 0) {
                    sb.append(" ");
                }
                sb.append(value);
            }
        }
        return sb.toString();
    }
}

将包装器对象添加到模型中...

while(resultaat.next()){
    model.addElement(new ListObject(resultaat.getString(1),
        resultaat.getString(2),
        resultaat.getString(3)));
}

然后在需要时检索值...

String value = model.getElementAt(index).get(0);

例如

数据如何存储在JList中? -它们实际上存储在jList的模型中,因此必须调用jList.getModel()。getElementAt(),而仅调用jList()。getElement()

我是否可以使用数组将数据彼此分开? 是的,看看我的例子

数据存储在数组中吗? 不,它们在jList模型中

尝试使用此代码将jlist模型放入对象数组

// create array with Model size
Object[] arrayOfElements = new Object[yourjList.getModel().getSize()];

// easy loop for adding elements from jList to array
 for(int i = 0; i< yourjList.getModel().getSize(); i++){

                            arrayOfElements[i] = yourjList.getModel().getElementAt(i);
            }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM