想要用流對List
long sum = list.stream().mapToLong(User::getAge).sum();
而我list中本身存的就是基本型別的數字,並不適用。後來在IBM開發者社群中找答案:
long sum = list.stream().reduce(Integer::sum).orElse(0);
看來對流操作還是不太熟。
List<Integer> list = new ArrayList<Integer>()
List
List是一個介面
表示了List裡面放的物件是什麼類型的,這樣寫就表示了,你List裡面放的必須是Integer類型的
int是java提供的8種原始資料型別之一。
Java為每個原始型別提供了封裝類,Integer是java為int提供的封裝類別。 int的預設值為0,而Integer的預設值為null
Integer提供了多個與整數相關的操作方法,例如,將字串轉換成整數,Integer中也定義了表示整數的最大值和最小值的常數。
ArrayList類別是一個特殊的陣列–動態陣列。透過新增和刪除元素,就可以動態改變數組的長度。
優點:
1、支援自動改變大小
2、可以靈活的插入元素
3、可以靈活的刪除元素
#限制:
##比一般的陣列的速度慢一些;ArrayList是List介面的實作類別。 ArrayList類別是繼承AbstractList抽象類別和實作List介面的一個實作類別。 因此,List接口不能被構造,也就是我們說的不能創建實例對象,但是我們可以像下面那樣為List接口創建一個指向自己的對象引用,而ArrayList實現類的實例對象就在這充當了 這個指向List介面的物件引用。 這句程式碼的目的是可以呼叫List介面裡面的內建函數,add,get等方法;以上是Java8怎麼實現對List<Integer>的求和的詳細內容。更多資訊請關注PHP中文網其他相關文章!