当前位置: 首页 > 知识库问答 >
问题:

如何创建获得两个参数的方法——流和整数

葛深
2023-03-14

我需要实现采用 Stream 和整数并返回字符串列表的方法。列表应根据整数进行分组 - 从高到低排序,仅返回数字

我想在一个流中完成它,得到这样的东西:

public static List<String> groupFunc(Stream<Nums> nums, int pass) {       
  List<Object> myList = nums.filter(s-> s.getScore() >= pass).sorted(Comparator.naturalOrder(s)).collect(Collectors.toList());
}


List<Nums> nums = new ArrayList<Nums>();

        nums.add(new Nums("A", 80));
        nums.add(new Nums("B", 57));
        nums.add(new Nums("C", 21));

        groupFunc(nums.stream(), 50).forEach(System.out::println);

    // should print "A","B"

你能帮我这个流吗?我不知道我是否应该使用过滤器。或者也许是前言?这个 Comparator.naturalOrder 只是暂时的。

共有1个答案

艾奕
2023-03-14

接口比较器中的实用程序方法对于帮助完成以下类型的操作非常有用:

public static List<String> groupFunc(Stream<Nums> nums, int pass) {
    return nums
            .filter(s-> s.getScore() >= pass)
            .sorted(Comparator.comparing(Nums::getScore).reversed())
            .map(Nums::getName)
            .collect(Collectors.toList());
}
 类似资料:
  • 问题内容: 我有一个很好的功能,可以以给定类型打印有关给定方法的一些信息,这是一个goplay 除了我找不到找到方法参数名称的方法以外,我需要做的所有事情吗? 问题答案: 局部变量的名称(包括函数参数)仅适用于程序员。编译器在生成代码时将其丢弃。无法检索参数名称,因为它们在编译后的代码中不可用。

  • 问题内容: 我在main中调用了swap方法,但它没有任何改变。我究竟做错了什么? 我的代码产生 以正常的升序排列,我希望它交换第4个和第15个元素。 问题答案: 移动方法调用:- 在您的for循环之外。因为,如果您的循环运行次数,则不会影响阵列。 另外,您需要先初始化数组,然后才能实际交换元素。调用之前需要执行的操作。

  • 问题内容: 给定,例如1.25-如何获得该数字的“ 1”和“ .25”部分? 我需要检查小数部分是否为.0,.25,.5或.75。 问题答案: 然后与1 / 4、1 / 2、3 / 4等进行比较。 如果是负数,请使用以下方法: 在作出停止其 -1.25 到 -1 和 -0.25

  • Java中的两个一维数组/向量可以这样相加: Java中的两个二维数组/矩阵可以这样添加: 这两个函数都要求数组具有相同的大小,以避免。 应该有一种方法可以使用递归添加两个未知维度的数组。 例如,下面的代码使用假设函数 应该输出 现在我想知道如何实现这个函数。 我从以下伪代码开始: 可以使用java.lang.reflect.Array中的-方法创建新数组 可以这样进行循环: 但我遇到了很多运行时

  • 本文向大家介绍如何在JavaFX中创建带有两个参数的气泡图?,包括了如何在JavaFX中创建带有两个参数的气泡图?的使用技巧和注意事项,需要的朋友参考一下 例 以下是一个JavaFX示例,演示了如何创建带有两个值的气泡图- 输出结果

  • 我有一个场景,其中一个url“serachUser”可能带有两个不同的值(请求参数)userId或UserName。 为此我创造了两种方法 但我得到模糊映射发现异常。Spring能处理这种情况吗?