今天用ArrayList拼接所有讀取到的byte數組,誰想總是失敗,讀取的byte數組轉換成list時,都變成了一個元素,而不是數組的個數。
代碼
結果
原來,java基本類型的數組不能直接通過Arrays.asList方法轉換為List,List的元素必須是包裝類。在Java8之前,想要實現這種轉換只能通過循環。對於int, long, double三種基本類型,Java8提供的新特性Stream則可以讓我們在一行之內解決這個問題。
1 list = Arrays.stream(arrays).boxed().collect(Collectors.toList());
但只支持int、long、和double,所以byte[]轉換成list還是得用循環。