我有一行代码应该打印出一系列不同的值,但是我当前的代码没有提供不同的值。
Student1是与Main不同的类,而tutgroupnum是在Student1类内创建的包含[1、9、9]的数组列表
我想要的输出应该是[1,9],但是我却得到了[1,9,9]。我误解了任何流函数吗?
Stream.of(Student1.tutgroupnum).distinct().forEach(x->System.out.println(x));
答案 0 :(得分:1)
如果tutgroupnum
是ArrayList
,请使用Student1.tutnumgroup.stream()
,而不要使用Stream.of(...)
。
前者产生一个Stream<Integer>
(我想这是列表中的元素类型)。
后者产生Stream<List<Integer>>
,其中包含单个元素Student.tutnumgroup
,因此此流的“与众不同”版本也恰好包含该元素。
答案 1 :(得分:0)
使用此
doB()