Java-array-Einträge
Ich brauche, um eine variable geben, die hat 3 Arten von Werten, ich weiß nur einen Weg, das zu tun, ist "Records", aber ich weiß, dass es keine solche geben, die als "Aufzeichnungen" in Java aber ArrayList
, aber ich verstehe es nicht...
Mein Ergebnis sollte sein: (weiß nicht, wie es Aussehen würde in Java, so zeige ich in verschiedenen Stil)
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;
}
Irgendwelche Vorschläge, wie man sowas?
Ist ArrayList
dass ich wirklich brauchen?
Danke für die Hilfe, am Ende habe ich kombiniert und bekam dieses Ergebnis, perfekt funktioniert:
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);
}
}
- Sie machen Ihre eigene
Record
Klasse und geben Sie es in die Felder. - Anstelle der Datensätze, die Sie verwenden Klassen in Java. Java-arrays, die die gleichen wie in Pascal. ArrayList ist eine Liste, die durch die Verwendung der Array für die Speicherung von Positionen, es ist nicht array selbst (es ist jedoch besser, da Sie nicht haben, um die Größe, es ist die Größenänderung automatisch)
- OP hat gesagt, dass die nicht wissen, wie es Aussehen würde, in java so, ich zeige in verschiedenen Stil, Wie können Sie ändern, seine pseudo-code zu verkaufen? Und sicherlich gibt es wichtigere Dinge zu Bearbeiten.
- Diese pseudo-code ist deutlich inspiriert von Pascal, und auch er wäre es nicht, würde es keinen Punkt geben, der Zugriff auf Felder des Typs, so habe ich geändert, aufpassen, dass ich nicht ändern, die Absicht, alle. Wenn Sie andere Dinge Wert geändert werden, fühlen Sie sich frei, dies zu tun.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du vermischt Dinge.
Einer
ArrayList
ist eine flexible alternative zu einem array und dient zum speichern von "eine Reihe" von Daten, welche denselben Typ haben.Den Typ dieser Daten (ein Eintrag), ist bis zu Ihnen.
Den standard-Weg, dies zu tun, in Java ist eine Klasse definieren, wie
dann
Betrachten Sie den folgenden code-snippet -
Hier
salary
,bonus
undYesOrNo
alle diese Daten undint
,float
undchar
sind Daten geben. Wir nanntensalary
ist einint
geben Sie Datenbonus
ist einfloat
Typ Daten. Hierint
,float
,char
- diese Daten Typ primitiver Typ injava
.Neben der primitive Typ, den Sie erstellen können Ihre eigenen Daten geben
object oriented
Programmiersprache wie -java
. Hier denke ich, kann man eine Klasse erstellen mit den NamenRecord
oder mit einigen anderen aussagekräftigeren Namen -Nach, dass, wenn Sie erstellen eine Instanz/ein Objekt der
Record
-Dann in
OOP
wir nannten Sie die neu erstellte KlasseRecord
als benutzerdefinierten Datentyp. Jetzt können wir genanntaRecord
alsRecord
Typ Daten.Dann können Sie
ArrayList
zum speichern derRecord
Typ Daten -