gpt4 book ai didi

Java数组记录

转载 作者:搜寻专家 更新时间:2023-10-31 19:32:53 25 4
gpt4 key购买 nike

我需要一个具有 3 种类型值的变量类型,我知道的唯一方法是“记录”,但我知道在 Java 中没有“记录”这样的类型,但是 ArrayList,但我不明白...

我的结果应该是:(不知道它在 Java 中的样子,所以我以不同的风格展示)

TData = Record
Username : String;
UserID : Int ;
RowID : Int;
end;
users : array[1..10] of TData;

for(int i = 1; i < rowCount; i++){
TData.Username[i] = rs.GetString("Name");
TData.UserID[i] = rs.GetInt("UserID");
TData.RowID[i] = row;
}

关于如何制作这样的东西有什么建议吗?ArrayList 是我真正需要的吗?

感谢您的帮助,最后我结合并得到了这个结果,效果很好:

class MyData {
private String userName;
private int userID;
private int RowID;


public MyData(String userName, int userID, int RowID) {
this.userName = userName;
this.userID = userID;
this.RowID = RowID;
}

public String getUserName() {
return userName;
}

public int getUserID() {
return userID;
}
public int getRowID() {
return RowID;
}
}

public void AList(){
ArrayList<MyData> users = new ArrayList<>();
try{
conn = DBConnection.DBConnector();
pst = conn.prepareStatement("SELECT * FROM TableUserData");
rs = pst.executeQuery();
row = 0;
while (rs.next()) {
users.add(new MyData(rs.getString("User_name"), rs.getInt("ID"), row));
row++;
}
for (MyData tmp : users) {
JOptionPane.showMessageDialog(null, "Users: " + tmp.getUserName() + " row: " + rtmp.getRowID());

}

}catch(Exception e){
JOptionPane.showMessageDialog(null, "Arraylist error: " + e);
}

}

最佳答案

你把事情搞混了。

ArrayList 是数组的灵活替代方案,用于存储“一堆”具有相同类型的数据。

这些数据(一项)的类型由您决定。

在 Java 中执行此操作的标准方法是定义一个类,例如

class MyData {
private String userName;
private int userID;
private int rowID;

public MyData(String userName, int userID, int rowID) {
this.userName = userName;
this.userID = userID;
this.rowID = rowID;
}

public String getUserName() {
return userName;
}

public int getUserID() {
return userID;
}

public int getRowID() {
return rowID;
}
}

然后

ArrayList<MyData> users = new ArrayList<>();

while (rs.next()) {
users.add(new MyData(rs.GetString("Name"), rs.GetInt("UserID"), rs.GetInt("RowID")));
}

关于Java数组记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28607405/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com