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

compareTo和compare是如何工作的?

方树
2023-03-14

我知道compare andcompareTo返回一个int值。

例如:

Returns
0 if a equal b
-1 if a < b
+1 if a > b

sort方法调用compareTocompare()方法。但是,当compare或compareTo返回int值时,sort方法如何排列list。在comparetocompareto返回要排序的int值后运行的后台场景是什么?sort方法如何使用从comparetocompareto返回的int值(-101)

共有1个答案

戈博易
2023-03-14

如果正在比较的两个元素(a,b)的顺序已经正确,则compare(a,b)a.compareto(b)都返回一个值<=0,因此不会发生任何事情。

如果它们的顺序不正确,则返回值为>0,表明它们必须互换。

 类似资料:
  • 问题内容: Java 和方法之间有什么区别?这些方法是否给出相同的答案? 问题答案: 从JavaNotes: - a.compareTo(b): 可比较接口:比较值并返回一个整数,该整数告诉值比较的是小于,等于还是大于。 如果你的类对象具有自然顺序,请实现接口并定义此方法。所有具有自然排序实现的Java类-示例:,包装类, compare(a, b): 比较器接口: 比较两个对象的值。这被实现为的

  • 我试图通过Sonar ut ant JaCoCo runTests示例了解JaCoCo和Sonar是如何协同工作的:https://github.com/SonarSource/sonar-examples/blob/master/projects/code-coverage/ut/ant/ut-ant-jacoco-runTests/build.xml 我在本地机器上安装声纳,默认配置。然后,我

  • 我使用的是jackson 2.10.0(https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core/2.10.0),下面是一个简单的测试用例 Person类定义如下,对于setter,我使用了@JsonSetter注释,而没有使用@JsonGetter作为getter, 然后,我创建一个Person对象,并将

  • 我将用一个例子来问这个问题。假设我有一个这样的项目目录。 首先我想知道我是否把作曲家放在。项目目录中的json文件是否正确,以便在供应商目录中安装库?第二,假设我有以下几行,作曲家。json 那么作曲家将在哪里配置自动加载来查找关于项目根的类samplevendor\包\sampleclass?我问这个问题是在看了symfony2composer.locked文件中的以下几行之后: 更新:我在自动

  • 应用程序具有上下文路径-->/spring-form-simple-project 因此,为了访问,我使用: 这个控制器又返回student.jsp,当提交这个student.jsp时,它用-->@RequestMapping(value=“/AddStudent”,method=RequestMethod.post)调用controller 任何关于这通常如何工作的指示都将是有帮助的。 谢谢!