0

我的 JDBC 程序中有一个字符串数组列表,我想访问它们以便将不同列的内容添加到单个字符串中,但是concat无论出于何种原因,该方法不适用于我的字符串。

while ( project_set.next()){
    for (int i=3;i<=meta.getColumnCount();i++){
        int arr_pos = i-3;
        String temp =project_set.getString(i) + "\n";
        project_data.get(arr_pos).concat(temp);
    }
}

出于这个问题的目的,我对其进行了很多简化,但是 temp 存储了列中的数据,然后我试图将其连接到 arrayList 中的一个点,该点已经被一个空字符串填充。

4

2 回答 2

3

String#concat返回一个新的String而不是修改原始的,因为它Strings是不可变的。而是将List元素设置为concat

project_data.set(arr_pos, project_data.get(arr_pos).concat(temp));

旁白:对Java 命名约定中定义的变量名使用 camelCase - 例如projectData

于 2013-05-10T21:28:21.227 回答
0

字符串是不可变的,调用 concat 返回一个新字符串。您需要将 temp 设置为列中的数据和 arrayList 中的当前值的连接,然后调用 ArrayList.set(index, temp) 来存储新值。

于 2013-05-10T21:31:14.347 回答