标签:sort Comparable String 程序逻辑 接口 完结 compareTo 心得 result
首先说一下自己的一些思考吧,最近边复习考试边学习有很多东西没有及时记录下来,今天考完试正好来回忆一下:
首先,自己对于Comparable接口作用的感想,最近学习了很多排序算法,发现其中很多排序算法都是用到了一个固定的API就是
你会发现他使用的次数最多然后我还有一个疑惑就是这个Comparable接口,第一次接触,很好奇他是干什么用的,通过查找资料发现,这个接口其实就是sort方法的本质,我们在使用sort方法然后点击进去以后查看源码就会发现这个
public final class String
implements Serializable, Comparable, CharSequence{
...
}
显而易见,sort也实现了这个接口,但是sort我们知道只是对于数组排序,但是这个Comparable接口却是一个泛型,所以说我们可以通过调用Comparable的接口,实现自己更多的功能。顺带介绍一下这个接口里面只有一个comparable.to,用于作比较并且返回0,-1,1三个值,但是如果是字符串的话就是返回字符串的长度差,这里我们可以选择通过查看源码的方式发现:
首先,写一个测试类
然后我们叫鼠标放到compareTo后点击ctrl同时左击鼠标进入这个接口:
然后ctrl+f查找compareTo记得T要大写
然后我们就可以显而易见的看懂这个方法,然后我们测一下字符串:
String str1 = "Strings";
String str2 = "Strings";
String str3 = "Strings123";
int result = str1.compareTo( str2 );
System.out.println(result);
result = str2.compareTo( str3 );
System.out.println(result);
result = str3.compareTo( str1 );
System.out.println(result);
结果:
同样的方式进入源码:
我们可以看到和刚刚进入看到的不太一样,这里是字符串的实现方法,也是可以一下子看明白滴!
分割线·························································································
说一下第二个就是自己最近实现的单链表:
标签:sort,Comparable,String,程序逻辑,接口,完结,compareTo,心得,result 来源: https://blog.csdn.net/justleavel/article/details/121197417
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。