将列表转换为字符串,然后返回

时间:2013-03-20 05:02:18

标签: java

我希望在从“LookUpTransaction”函数返回之前,将以下代码中生成的列表作为字符串。我该怎么办。?

public String[] LookUpTransaction() {
        List list=new ArrayList();
        try {
            Class.forName("com.mysql.jdbc.Driver");
            Connection con = DriverManager.getConnection(
                    "jdbc:mysql://localhost:3306/bank", "root", "root");
            PreparedStatement ps = con
                    .prepareStatement("select accountno,details,amount from transaction");
            rs = ps.executeQuery();
            while(rs.next()){
                list.add(rs.getString(1));
                list.add(rs.getString(2));
                list.add(rs.getString(3));
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        String[] strarray = new String[list.size()];
        return list.toArray(strarray);
    }

2 个答案:

答案 0 :(得分:0)

您可以使用return Arrays.toString(strarray);在这种情况下,您必须将方法的返回类型更改为String。那就是你的代码必须修改如下所示:

public String LookUpTransaction() {
        List list=new ArrayList();
        try {
            Class.forName("com.mysql.jdbc.Driver");
            Connection con = DriverManager.getConnection(
                    "jdbc:mysql://localhost:3306/bank", "root", "root");
            PreparedStatement ps = con
                    .prepareStatement("select accountno,details,amount from transaction");
            rs = ps.executeQuery();
            while(rs.next()){
                list.add(rs.getString(1));
                list.add(rs.getString(2));
                list.add(rs.getString(3));
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        String[] strarray = new String[list.size()];
        strarray = list.toArray(strarray);
        return Arrays.toString(strarray);
    }

请注意,Arrays.toString(strarray)返回指定数组({1}}内容的字符串表示形式。字符串表示由数组元素的列表组成,用方括号括起来(“[]”)。相邻元素由字符“,”(逗号后跟空格)分隔。如果您希望迭代列表&连接你可以尝试这样的元素:

strarray

答案 1 :(得分:0)

使用List.toArray(),然后使用Arrays.toString()

String[] y = x.toArray(new String[0]);
Arrays.toString(y)