为什么我的代码没有在列表中提供不同的int值?

时间:2019-04-06 19:19:35

标签: java

我有一行代码应该打印出一系列不同的值,但是我当前的代码没有提供不同的值。

Student1是与Main不同的类,而tutgroupnum是在Student1类内创建的包含[1、9、9]的数组列表

我想要的输出应该是[1,9],但是我却得到了[1,9,9]。我误解了任何流函数吗?

Stream.of(Student1.tutgroupnum).distinct().forEach(x->System.out.println(x));

2 个答案:

答案 0 :(得分:1)

如果tutgroupnumArrayList,请使用Student1.tutnumgroup.stream(),而不要使用Stream.of(...)

前者产生一个Stream<Integer>(我想这是列表中的元素类型)。

后者产生Stream<List<Integer>>,其中包含单个元素Student.tutnumgroup,因此此流的“与众不同”版本也恰好包含该元素。

答案 1 :(得分:0)

使用此

doB()