基础题
Question 1 (常用流操作)
- 编写一个求和函数,计算流中所有数的和。例int addUp(Stream numbers)
- 编写一个函数,参数为艺术家集合,返回一个字符串集合,其中包含了艺术家的姓名与国籍。(艺术家类名为Artist,里面有获得姓名与国籍的get方法getName()与getNationality())
- 编写一个函数,参数为专辑集合,返回一个由 最多包含3首歌曲的专辑 组成的集合。(专辑类名为Album,里面包含了一个返回本专辑所有歌曲的集合的方法getTrackList())
-
Question 1 的参考思路
- 编写一个求和函数,计算流中所有数的和。
这道练习题要求计算流中所有的数的和,参数为流,返回他们的和,这其实就是要求我们重复实现类库中的sum()方法,那系列第二篇提到的reduce操作里面已经提到了,类库中的sum,max,min等一系列操作都是用reduce完成的,因此在这里我们也可以用reduce进行操作。参考代码如下
public static int addUp(Stream<Integer> numbers){
reutrn numbres.reduce(0,(x,y) -> x+y);
}