首页 > 编程知识 正文

linkedset,java中arraylist用法

时间:2023-05-04 20:37:27 阅读:18749 作者:2214

做好每天重复的工作,解决每次遇到的困难。

这次,我们将介绍java收藏框架学习中的两个特殊接口。 是SortedSet和SortedMap。

这两个接口都提供排序操作,以实现子类具有接口中定义的功能。 Set和Map没有排序功能。 通过提供SortedMap和SortedSet接口,可以在提供排序方案的同时增加获取集合中特定位置元素的方式。 相似性:连接的第一个元素、最后一个元素、特定元素之间的元素等。

1 SortedSet接口publicinterfacesortedseteextendssete { http://www.Sina.com /

ConcurrentSkipListSet,TreeSet

//SortedSet提供的方法: Java.util.sorted set.comparator (//自己定义比较器,对于内部元素为java.util.SortedSet.first ) /第一个元素不包括添加最后一个元素Java.util.sorted set.spliterator )//Java8,而是生成spl iterator接口。 与nio的serator接口类似e2 )/e1和e2之间的元素Java.util.sortedSet.tailset(e )/e之后的元素。 包括通过e利用实现了sortedset的集合在内进行实验。

使用实现了SortedSet的TreeSet进行实验sortedsetstringsortedtreeset=newtreesetstring (; 接收//sortedsettreeset的实例//元素sortedtreeset.add('aa ); sortedtreeset.add('bb ); sortedtreeset.add(cc ); sortedtreeset.add('DD ); //重复元素,sortedtreeset.add('aa ); sortedtreeset.add('bb ); 添加以下元素://sortedtreeset.add(ee ); System.out.println ('总共有多少元素? ' sortedTreeSet.size ) );//添加7个元素,重复的其余5个System.out.println ('第一个元素: ' sortedTreeSet.first ) ); //第一个元素: aaSystem.out.println (最后一个元素: ' sortedTreeSet.last ) ); //最后一个元素: ee system.out.println (headset元素: ' sortedtreeset.headset ) ); //cc以前的元素: [ AABB ] system.out.println (' tail set元素: ' sortedtreeset.tailset ) ' cc ' ); //cc之后的元素: [ cc ddee ] system.out.println (subset元素:“sortedtreeset.subset”,“DD”)//bb到DD之间的元素: [ bb //Java8中为SortedSet.comparator ) )功能,在此定义包含name和age的Man类,并加入new Comparator。 后面的//SortedMap也有这个接口,不做说明。 sortedsetmansortedmanset=newtreesetman (newcomparatorman ) ) @ overridepublicintcompare (Mano 1,Man o2 )//todoauto } ); manM1=newman(Li1 )、22 ); manM2=newman(Li2 )、25 ); manM3=newman(Li3 )、19 ); manM4=newman(Li4 )、23 ); manM5=newman(Li5 )、21 ); sortedmanset.add(m1; sortedmanset.add(m2; sortedmanset.add(m3; sortedmanset.add(m4; sortedmanset.add(m5; iterator interator2=sortedmanset.iterator (; while(interator2.Hasnext () manman=) man ) interator2.next ); system.out.println (' manname==' man.getname ); } system.out.println ((=======================) ); 结果:

总共有多少元素: 5

第一种元素: aa

最后一个元素: ee

headSet元素: [aa,bb]

tailSet元素: [cc、dd、ee]

subSet元素: [bb,cc]

===================================

排序后

manname==li3

manname==li5

manname==li1

manname==li4

manname==li2

===================================

2 SortedMap接口公共接口2 SortedMap,V extends MapK,V {

所有已知的实现类:

ConcurrentSkipListMap,TreeMap

接口提供的方法:

java.util.SortedMap.comparator ()//接收比较器Map排序Java.util.sorted Map.entryset (//后是map的entryset集合Java . 前往第一个keyJava.util前面的键值是Java.util.sorted map.keyset (相对于获取/key的set,java.util.SortedMap.lastKey )//收集最后一个keyJava.util.sortedmap之间的键值对Java.util.sortedmap.tailmap(k ) /集合中最后一个键值对java.util.SortedMap.values

SortedMapString,integersortedtreemap=newtreemapstring,integer (; //SortedMap接收TreeMap的实例//附加元素sortedtreemap.put('aa ',11 ); sortedtreemap.put('bb ',22 ); sortedtreemap.put('cc ',33 ); sortedtreemap.put('DD ',44 ); sortedtreemap.put('ee ',55 ); System.out.println ('总共有多少元素?' sortedTreeMap.size ) );//添加7个元素,重复的其余5个system.out.println (entryset:' sorted treemap.entryset ) ); //所有键值均为System.out.println ('第一个元素: ' sortedTreeMap.firstKey ) ); //第一个key元素System.out.println (最后一个元素: ' sortedTreeMap.lastKey ) ); //最后一个key元素system.out.println(headset元素: ' sortedtreemap.headmap ) ' cc ' ); //cc前面的元素system.out.println(tailset元素: ' sortedtreemap.tailmap ) (cc ) ); //cc之后的元素system.out.println(subset元素:“sortedtreemap.submap”、“dd”); //aa到dd之间的元素system.out.println(subset元素: ' sortedTreeMap.values ) ); //values,所有值的结果:

总共有多少元素: 5

企业: [ aa=11,bb=22,cc=33,dd=44,ee=55]

第一种元素: aa

最后一个元素: ee

头映射元素: {aa=11,bb=22}

tailMap元素: {cc=33,dd=44,ee=55}

subMap元素: {aa=11,bb=22,cc=33}

所有值: [11、22、33、44、55]

以下文章介绍了扩展了SortedMap和SortedSet接口的NavigableMap和NavigableSet接口。 此界面提供了一种导航方法,用于返回与特定搜索对象最近的匹配项。

NavigatorMapNavigatorSet和实现类及原理说明

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。