2017-06-17 24 views
0
List<Accumulation> accumulations = repository.getAccumulation(); 

public class Accumulation implements Serializable { 
    private static final long serialVersionUID = 1L; 

    private String mobileNo; 
    private String address; 
    private int count; 

    -- 
    getter 
    setter 
} 

如何使用java獲取總數從abobe列表中是最簡單的方法。從列表中計算數據的優化方式

目前我使用的一些基本的常用代碼象下面這樣:

int totalCount = 0; 

for (Accumulation cccumulation : accumulations) { 
    totalCount += cccumulation.getCount(); 
} 
+1

'得到它私人詮釋雙'?這不會編譯。你的意思是'private int count'? – Andreas

+0

我認爲並行流 – Jerry06

+0

這樣做並沒有什麼錯,但是如果您想要一種替代方式,請使用Java 8 Streams:'int totalCount = accumulations.stream()。mapToInt(Accumulation :: getCount)。 sum();' – Andreas

回答

0

我不知道這是節目的一個更好的辦法,但我可以通過這個

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); 
    } 
}