ich nicht wissen, ist dies eine bessere Art der Programmierung, aber ich kann es bekommen dieses
class Entity extends ArrayList<Entity>{
public static int totalCount;
public static int totalListCount;
private String mobileNo;
private String address;
private int count;
public String getMobileNo() {
return mobileNo;
}
public void setMobileNo(String mobileNo) {
this.mobileNo = mobileNo;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
totalCount += count;
}
public Entity(String mobileNo, String address, int count) {
super();
this.mobileNo = mobileNo;
this.address = address;
this.count = count;
totalCount += count;
}
public Entity() {
super();
}
public boolean add(Entity entity) {
totalListCount += entity.getCount();
return super.add(entity);
}
}
public class CountEntityInList {
public static void main(String[] args) {
Entity e1 = new Entity("9999999999", "aaa", 10);
Entity e2 = new Entity("9999999999", "aaa", 10);
Entity e3 = new Entity("9999999999", "aaa", 10);
Entity e4 = new Entity("9999999999", "aaa", 10);
Entity e5 = new Entity("9999999999", "aaa", 10);
List<Entity> list = new Entity();
list.add(e1);
list.add(e2);
list.add(e3);
list.add(e4);
list.add(e5);
System.out.println(Entity.totalCount);
Entity e6 = new Entity();
e6.setCount(20);
Entity e7 = new Entity();
e7.setCount(20);
Entity e8 = new Entity();
e8.setCount(20);
Entity e9 = new Entity();
e9.setCount(20);
Entity e10 = new Entity();
e10.setCount(20);
System.out.println(Entity.totalCount);
System.out.println(Entity.totalListCount);
}
}
' private int doppelt? Das wird nicht kompiliert. Meintest du "private int count"? – Andreas
parallele stream denke ich – Jerry06
Es ist nichts falsch damit, es so zu tun, wie Sie es tun, aber wenn Sie einen alternativen Weg wollen, verwenden Sie Java 8 Streams: 'int totalCount = accumulations.stream(). MapToInt (Accumulation :: getCount). sum(); ' – Andreas