compareto函数(compareto方法返回值)

admin 316 0

老铁们,大家好,相信还有很多朋友对于compareto函数和compareto方法返回值的相关问题不太懂,没关系,今天就由我来为大家分享分享compareto函数以及compareto方法返回值的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!

一、C# 的 CompareTo 怎么用

String.CompareTo方法将此实例与指定的对象或String进行比较版,二者相对值的指示。

if(s.CompareTo("upload")!= 1)就是将S与upload相比较,如果相同则返回假,如果不同则返回真。

CompareTo这是字符串比较的函数,用法:

当s1>s2时,s1.CompareTo(s2)==1

当s1=s2时,s1.CompareTo(s2)==0

当s1<s2时,s1.CompareTo(s2)==-1

public int compareTo(IntegeranotherInteger)在数字上比较两个Integer对象。

anotherInteger-要比较的 Integer。

返回值:如果该 Integer等于 Integer参数,则返回 0值;如果该 Integer在数字上小于 Integer参数,则返回值-1;如果 Integer在数字上大于 Integer参数,则返回整数1。

参考资料来源:百度百科-compareTo

二、java中compareTo()的返回值是什么

1、public int compareTo(String anotherString)

2、按字典顺序比较两个字符串。该比较基于字符串中各个字符的 Unicode值。将此 String对象表示的字符序列与参数字符串所表示的字符序列进行比较。如果按字典顺序此 String对象在参数字符串之前,则比较结果为一个负整数。如果按字典顺序此 String对象位于参数字符串之后,则比较结果为一个正整数。如果这两个字符串相等,则结果为 0;compareTo只有在方法 equals(Object)返回 true时才返回 0。

3、这是字典排序的定义。如果这两个字符串不同,则要么它们在某个索引处具有不同的字符,该索引对二者均为有效索引,要么它们的长度不同,或者同时具备上述两种情况。如果它们在一个或多个索引位置上具有不同的字符,假设 k是这类索引的最小值;则按照<运算符确定的那个字符串在位置 k上具有较小的值,其字典顺序在其他字符串之前。这种情况下,compareTo返回这两个字符串在位置 k处的两个不同的 char值,即值:

4、this.charAt(k)-anotherString.charAt(k)

5、如果它们没有不同的索引位置,则较短字符串在字典顺序上位于较长字符串的前面。这种情况下,compareTo返回这两个字符串长度的不同,即值:

6、this.length()-anotherString.length()

7、接口 Comparable<String>中的 compareTo

8、anotherString-要比较的 String。

9、如果参数字符串等于此字符串,则返回 0值;如果按字典顺序此字符串小于字符串参数,则返回一个小于 0的值;如果按字典顺序此字符串大于字符串参数,则返回一个大于 0的值。

三、java compareto 是怎么比较的

1、java中的compareto方法,返回参与比较的前后两个字符串的asc码的差值。

2、如果两个字符串首字母不同,则该方法返回首字母的asc码的差值

3、参与比较的两个字符串如果首字符相同,则比较下一个字符,直到有不同的为止,返回该不同的字符的asc码差值,如果两个字符串不一样长,可以参与比较的字符又完全一样,则返回两个字符串的长度差值

四、Java中的compareTo()函数是怎么用的

compareTo()方法用于将 Number对象与方法的参数进行比较。可用于比较 Byte, Long, Integer等。该方法用于两个相同数据类型的比较,两个不同类型的数据不能用此方法来比较。

public int compareTo( NumberSubClass referenceName)

referenceName--可以是一个 Byte, Double, Integer, Float, Long或 Short类型的参数。

1、如果指定的数与参数相等返回0。

2、如果指定的数小于参数返回-1。

3、如果指定的数大于参数返回 1。

Java中的compareTo()函数用法比较另一个函数字符:public int compareTo(String anotherString)

按字典顺序比较两个字符串。该比较基于字符串中各个字符的 Unicode值。将此 String对象表示的字符序列与参数字符串所表示的字符序列进行比较。如果按字典顺序此 String对象在参数字符串之前,则比较结果为一个负整数。

如果按字典顺序此 String对象位于参数字符串之后,则比较结果为一个正整数。如果这两个字符串相等,则结果为 0;compareTo只有在方法 equals(Object)返回 true时才返回 0。

这是字典排序的定义。如果这两个字符串不同,则要么它们在某个索引处具有不同的字符,该索引对二者均为有效索引,要么它们的长度不同,或者同时具备上述两种情况。

如果它们在一个或多个索引位置上具有不同的字符,假设 k是这类索引的最小值;则按照<运算符确定的那个字符串在位置 k上具有较小的值,其字典顺序在其他字符串之前。

这种情况下,compareTo返回这两个字符串在位置 k处的两个不同的 char值,即值:

this.charAt(k)-anotherString.charAt(k)

如果它们没有不同的索引位置,则较短字符串在字典顺序上位于较长字符串的前面。这种情况下,compareTo返回这两个字符串长度的不同,即值:

this.length()-anotherString.length()

指定者:接口 Comparable<String>中的 compareTo

参数:anotherString-要比较的 String。

返回:如果参数字符串等于此字符串,则返回 0值;如果按字典顺序此字符串小于字符串参数,则返回一个小于 0的值;如果按字典顺序此字符串大于字符串参数,则返回一个大于 0的值。

compareTo就是比较两个值,如果前者大于后者,返回1,等于返回0,小于返回-1,我下面给出了例子,由于比较的变量我用的是int,int型可以直接比较,所有没有用到compareTo比较,如果声明的是Date、String、Integer或者其他的,可以直接使用compareTo比较,比如以下函数代码用法:

public int compareTo(TestModel1 o){

return this.str1.compareTo(o.str1);

1.当两个比较的字符串是英文且长度不等时,

1)长度短的与长度长的字符一样,则返回的结果是两个长度相减的值

2)长度不一样且前几个字符也不一样,从第一位开始找,当找到不一样的字符时,则返回的值是这两个字符比较的值

2.当两个比较的字符串是英文且长度相等时,

2)多个字符,第一个字符不同则直接比较第一个字符

3)多个字符,第一个字符相同则直接比较第二个字符,以此类推

五、java的compareto方法是谁的方法

compareTo(Object o)方法是java.lang.Comparable<T>接口中的方法,

比较有两个方法经常搞混淆,现对其进行总结以加深记忆。

1.compareTo(Object o)方法是java.lang.Comparable<T>接口中的方法,

当需要对某个类的对象进行排序时,该类需要实现Comparable<T>接口的,必须重写public int compareTo(T o)方法,

比如MapReduce中Map函数和Reduce函数处理的<key,value>,其中需要根据key对键值对进行排序,

所以,key实现了WritableComparable<T>接口,实现这个接口可同时用于序列化和反序列化。WritableComparable<T>接口(用于序列化和反序列化)是Writable接口和Comparable<T>接口的组合;

2.compare(Object o1,Object o2)方法是java.util.Comparator<T>接口的方法,

它实际上用的是待比较对象的compareTo(Object o)方法。

下面我们写一来看看上面两个方法是怎么用的:

首先,写一个User类,代码如下:

publicclassUserimplementsComparable<Object>{

publicvoidsetName(Stringname){

elseif(o!=null&&oinstanceofUser){

}

接下来,我们写一个测试类Test:

//编写Comparator,根据User的id对User进行排序

privatestaticfinalComparator<User>COMPARATOR=newComparator<User>(){

publicintcompare(Usero1,Usero2){

returno1.compareTo(o2);//运用User类的compareTo方法比较两个对象

publicstaticvoidmain(String[]args){

ArrayList<User>student=newArrayList<User>();

Useruser1=newUser(1,"yueliming");

Useruser2=newUser(2,"yueliming");

Collections.sort(student,COMPARATOR);//用我们写好的Comparator对student进行排序

for(inti=0;i<student.size();i++){

System.out.println(student.get(i).getId());

文章分享结束,compareto函数和compareto方法返回值的答案你都知道了吗?欢迎再次光临本站哦!