当前位置: 代码迷 >> Java Web开发 >> List转换成String
  详细解决方案

List转换成String

热度:577   发布时间:2010-10-28 14:54:27.0
List转换成String
   我用一个List保存我在数据库读出来的数据,我是以List<String>=类对象.方法名(id)来读的,之后我用
        int y = lists.size();
        String[] s = new String [y];
        String []Name = (String[]) lists.toArray(s);
这来写,开始我是将这三句合为一句的,但由于出现错误,之后就这样写,我调试的时候,都有数据读到,就在最后一句的时候就报错啦,包的错误是
java.lang.ArrayStoreException,我这样写是根据网上资料写的,我自己在手动添加数据进去List,就是list.add
这样添加之后也同样用输出是可以的,但我是在读出数据库的数据怎么就有错误啦,请问是什么原因呢?

我想是我toArray的方法不会用,请问toArray是怎么用的呢

List我是这样new的  List lists = new ArrayList();

还有我突然想到,我在数据库读出来应该还是一个个bean对象的List,但我不是已经用泛型将它转成了String类型了吗,按道理应该是可以以数组方式读出来的,怎么就报错呢?

[ 本帖最后由 lovemm 于 2010-10-28 15:30 编辑 ]
搜索更多相关主题的帖子: String  List  

----------------解决方案--------------------------------------------------------
希望能对你有所帮助:
程序代码:
import java.util.ArrayList;
import java.util.List;
import java.util.Arrays;

public class TestArr {
    public static void main(String[] args) {
        String[] str = { "abc", "def" };
        List list = new ArrayList();
        list.add("cba");
        list.add("fed");
        Object[] str1 = list.toArray();// 这里返回的是Object类型的数组,不能用强制转换,Object[]不能转换成String[],只能一个一个元素来转
        List list1 = Arrays.asList(str);// Arrays类中的asList()方法能把数组变为集合
        System.out.println(str1[0].toString());
        System.out.println(list1.contains("abc"));
    }
}

----------------解决方案--------------------------------------------------------
还是贴代码好,文字太多看了好晕。。。
----------------解决方案--------------------------------------------------------
程序代码:
        List<String> lists =  as.getOne(id);
        int y = lists.size();
        String[] s = new String [y];
        String []Name = (String[]) lists.toArray(s);
        
这是我的,as.getOne(id)是重数据库里面拿出来,就运行错误啦

[ 本帖最后由 lovemm 于 2010-10-28 18:24 编辑 ]
----------------解决方案--------------------------------------------------------
你佛山的吗~~~交个朋友吧~~~大家都是编程的~~~QQ:68821039~~~
----------------解决方案--------------------------------------------------------
以下是引用syg5434在2010-10-28 16:16:20的发言:

希望能对你有所帮助:import java.util.ArrayList;
import java.util.List;
import java.util.Arrays;

public class TestArr {
    public static void main(String[] args) {
        String[] str = { "abc", "def" };
        List list = new ArrayList();
        list.add("cba");
        list.add("fed");
        Object[] str1 = list.toArray();// 这里返回的是Object类型的数组,不能用强制转换,Object[]不能转换成String[],只能一个一个元素来转
        List list1 = Arrays.asList(str);// Arrays类中的asList()方法能把数组变为集合
        System.out.println(str1[0].toString());
        System.out.println(list1.contains("abc"));
    }
}
按照你 List list = new ArrayList();
Object[] str1 = list.toArray();
System.out.println(str1[0].toString());
我读出来的是我javabean的对象哦,我要怎么才可以读出数据库的信息啊
----------------解决方案--------------------------------------------------------
我是这样读出来的
程序代码:
List list = ArrayList();
PreparedStatement ps = connection.prepareStatement(sql);
        ResultSet rs = ps.executeQuery();
      
        while(rs.next()){
                rs.getString("name");
        list.add(rs);
}
    return list;

servlet是
List<String> lists =  as.getOne(id);//as.as.getOne(id)是上面方法的名字
        

        String []Name =lists.toArray(new String [lists.size()]);

到Name就报错啦




我另外一个想法也错,我是想用String[]来代理用List来保存数据库读出的数据,代码如下:
程序代码:

String[] yi null;
int y=0;
PreparedStatement ps = connection.prepareStatement(sql);
        ResultSet rs = ps.executeQuery();
              
        while(rs.next()){
            
        yi[y] = rs.getString("name");
        y++;
        }
    return yi;

servlet是

String[] src =  as.getOne(id);//as.as.getOne(id)是上面方法的名字

这次到了yi[y]就出错啦,报空指针错误,      

----------------解决方案--------------------------------------------------------
import java.util.*;
public class ListToString
{
public static void main(String[] args)
{
List<String> list = new ArrayList<String>();   
list.add("a1");   
list.add("a2");   
String[] toBeStored = list.toArray(new String[list.size()]);   
for(String s : toBeStored) {   
      System.out.println(s);   
}     
}
}
运行一下
----------------解决方案--------------------------------------------------------
  相关解决方案