繁体   English   中英

如何将数据库中的数据放入 Arraylist?

[英]How to put data from a database into an Arraylist?

我要做的是将数据库中的数据放入 Arraylist 中。

我有一个带有 wamp 的数据库和一个简单的表:Player,它有一个名字和一个分数。

我试图让所有这些播放器进入 ArrayList,但我尝试过的方法不起作用,因为我的 ArrayList 是播放器类型,而我输入的类型是字符串和 int。

这是我现在拥有的代码:

public int test1() {
    try {
        ArrayList<Player> playerList= new ArrayList<Player>();
        BD=ds.getConnection();
        Statement s = BD.createStatement();
        ResultSet p = s.executeQuery("SELECT * FROM player");
        int i = 0;
        while(p.next()) {
            i++;
            playerList.add(p.getString("name")); //did not work
            playerList.add(p.getInt("score");
        }
        s.close();
        BD.close();
        return 1;
    } catch (java.sql.SQLException ex) {

        return 0;
    }
}

有人知道怎么做,我会非常感激。

亲切地

playerList 将只接受 Player object,而不是 String 或 int。 所以用手头的数据创建一个 Player object,然后添加到列表中:

while(p.next()) {
    i++;
    String name = p.getString("name");
    int score = p.getInt("score");
    Player player = new Player(name, score); // assuming such a constructor exists

    // playerList.add(p.getString("name")); //did not work
    // playerList.add(p.getInt("score");

    // do this:
    playerList.add(player);
}

您有一个玩家列表,并且您正在尝试将一个字符串和一个 Integer 添加到其中。

ArrayList<Player> playerList= new ArrayList<Player>();
...
      playerList.add(p.getString("name")); //did not work
      playerList.add(p.getInt("score");
...

您可以按照@Hovercraft Full Of Eels 的建议创建一个新玩家,然后再添加到列表中:

Player player = new Player(p.getString("name"), p.getInt("score"));
playerList.add(player);

暂无
暂无

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

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