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

第二个参数在这个函数中做什么?[重复]

廉志强
2023-03-14
Arrays.sort(courses, (a, b) -> a[1] - b[1]);
PriorityQueue<Integer> queue = new PriorityQueue<>((a, b) -> b - a);

我试着看文档,但不明白第二个论点是什么。我知道。sort(array,1,4)表示从索引1到3进行排序。但是在这种情况下,带有<代码>的箭头-

共有1个答案

鞠隐水
2023-03-14

箭头表示一个lambda函数,用于比较任何两个参数ab。在引入lambdas之前(在Java 8中),排序如下:

Arrays.sort(courses, new Comparator<int[]>() {
    @Override
    public int compare(int[] a, int[] b) {
        return a[1] - b[1];
    }
});

我正在猜测a的类型,但可以用任何数字数组替换int[]

 类似资料:
  • 问题内容: 什么是参数: 如果我这样做: 并具有两个Localizable.strings版本(英语和西班牙语),每个版本是否都需要输入: 英语难道不是多余的吗? 问题答案: 注释字符串被应用程序忽略。它用于翻译者的利益,可在您的应用程序中找到的键的上下文用法中添加含义。 例如,键在给定语言中的取值可能不同,具体取决于该短语在该语言中需要使用的正式或非正式程度(“ Whats up World”,

  • 我遇到了这段代码,不知道为什么X在这里工作。

  • 在这个React(使用JSX)代码中做什么,它叫什么?

  • 问题内容: 有谁知道,为什么Oracle的(和)函数总是对第二个参数求值,即使第一个参数不是呢? 简单测试: 返回,但也打印。 已调用,即使由于第一个参数不是,结果也被忽略了。 问题答案: 一直都是这种方式,因此Oracle必须保持这种方式以保持向后兼容。 使用,而不是让短路行为。

  • 预计此函数将无法typeCheck。然而,没有解释发生这种情况的原因。在GHCI中试用时,我得到了以下输出: 为什么会出现这种情况?

  • 问题内容: 首先,我想澄清一个问题:它是关于函数的, 而不是 列表的片段或类似的字符串。 文档提到该函数在NumPy中使用,并且没有给出用法示例(说了 如何使用它, 但没有说 何时使用它 )。而且,我 从未 见过在任何Python程序中使用过此函数。 在以纯Python(无NumPy或SciPy)编程时,何时应使用该函数?任何示例将不胜感激。 问题答案: 给出与相同的结果。一个的优点对象是,它可以