将结果集保存到 java 中的数组

Save a Resultset to an Array in java

我想将整个Mysqltable的结果保存在一个数组中

    String sDriver = "com.mysql.jdbc.Driver";
    String sURL = "jdbc:mysql://www.odorxd.xyz:3306/u218933149_odor_base";

    try {
        Class.forName(sDriver).newInstance();
        Connection con = DriverManager.getConnection(sURL, "u218933149_estenoesodor", "Tsunayoshi27?");

        PreparedStatement stmt = null;
        ResultSet rs = null;

        stmt = con.prepareStatement("SELECT * FROM justname");
        rs = stmt.executeQuery();

        while (rs.next()) {

            for (int x = 1; x <= rs.getMetaData().getColumnCount(); x++) {
                System.out.print(rs.getString(x) + "\t");

            }

            System.out.println("");

        }

    } catch (SQLException sqle) {
        sqle.printStackTrace();
    } catch (Exception e) {
        e.printStackTrace();
    }

它returns这是从数据库给我的

运行: 布兰登 布兰登 胡里奥

丹尼尔
构建成功(总时间:1 秒)

我想将数据库中的内容保存在一个数组中,以便能够使用排序和搜索方法来实现它

String str[] = { "Ajeet", "Steve", "Rick", "Becky", "Mohan", "Brandon", "Brandon Jesus", "Brandon Flores", "Brandon Flores Flores"};
    String temp;
    System.out.println("Strings in sorted order:");
    for (int j = 0; j < str.length; j++) {
       for (int i = j + 1; i < str.length; i++) {
        // comparing adjacent strings
        if (str[i].compareTo(str[j]) < 0) {
            temp = str[j];
            str[j] = str[i];
            str[i] = temp;
        }
       }
       System.out.println(str[j]);
    }   

这就是我需要将其保存在数组中的原因

如有任何意见或帮助,我将不胜感激,谢谢

您可以使用 List.

List<String> list = new ArrayList<>();
while (rs.next()) {
    for (int x = 1; x <= rs.getMetaData().getColumnCount(); x++) {
        String str = rs.getString(x)
        list.add(str);
        System.out.print(str + "\t");
    }
    System.out.println();
}
String[] arr = list.toArray(new String[0]);
String temp;
// ... sort