Ich habe keine Ahnung über die Iteration eines Objekts in Java, aber ich habe versucht, eine benutzerdefinierte Klasse zu erstellen und versuchen, ein Ergebnis davon zu erhalten, aber ich habe ein Iterationsergebnis, während der Datensatz in Objekt sind anders. und hier sind meine Klasse.Java Iterieren eines Objekts der benutzerdefinierten Klasse
package property;
import java.util.ArrayList;
public class obj_error {
public Integer error_code;
public String error_desc;
public Integer error_line;
public String error_modul;
public Integer total = 0;
public ArrayList<obj_error> list = new ArrayList<obj_error>();
public void set(Integer code, String desc, String module,Integer line){
this.error_code = code;
this.error_desc = desc;
this.error_modul= module;
this.error_line = line;
this.total = total+1;
//list.add(this);
set_list();
}
public Integer error_code() { return error_code; }
public String error_desc() { return error_desc; }
public Integer error_line() { return error_line; }
public String error_modul() { return error_modul; }
public Integer total() { return total; }
public ArrayList<obj_error> get_error_list() { return list; }
public void set_code(Integer param) { this.error_code = param; }
public void set_desc(String param) { this.error_desc = param; }
public void set_line(Integer param) { this.error_line = param; }
public void set_modul(String param) { this.error_modul = param; }
public void set_total(Integer param) { this.total = total+1; }
public void set_list(){ list.add(this); }
}
und das ist, wo ich dieser Klasse nennen
package testcase;
import java.util.ArrayList;
import java.util.Iterator;
import property.obj_error;
public class set_error {
public static void main(String[] args){
obj_error error = new obj_error();
error.set(1001,"Not Valid","Loand",1);
error.set(1002,"Not Validsafasd","Loan",2);
System.out.println(error.list);
for(Iterator<obj_error> i = error.get_error_list().iterator(); i.hasNext();) {
obj_error item = i.next();
System.out.println(item.error_code+" " + item.error_desc+ " " +item.error_line+ " " + item.error_modul);
}
//print out result
//1002 Not Validsafasd 2 Loan
//1002 Not Validsafasd 2 Loan
}
}
Antwort auf Ihre Frage, aber das sieht so aus, als sollte es 'privat' sein' public void set_list() {list.add (this); } ' –
Werfen Sie einen Blick auf Ihre Liste Mitglied und lesen Sie über statische vs. nicht statische Klassenmitglieder – Gernot
@Gernot statische Mitglieder * sind * Klassenmitglieder. – Kayaman