加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java集合题

发布时间:2020-12-14 06:37:13 所属栏目:Java 来源:网络整理
导读:p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Arial; font-size:14px" span style="font-size:18px" 问题:某班30个学生的学号为20070301-20070330,全部选修了a target="_blank" href="http://lib.csdn.n

<p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Arial; font-size:14px">
<span style="font-size:18px">问题:某班30个学生的学号为20070301-20070330,全部选修了<a target="_blank" href="http://lib.csdn.net/base/javaee" rel="nofollow" class="replace_word" title="Java EE知识库" style="color:rgb(223,52,52); text-decoration:none">Java程序设计课程,给出所有同学的成绩(可用随机数产生,范围60-100),请编写程序将本班各位同学的成绩按照从低到高排序打印输出。


<p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Arial; font-size:14px">
<span style="font-size:18px">? ? ?要求:分别用List、Map、Set来实现,打印的信息包括学号、姓名和成绩。


<p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Arial; font-size:14px">

1、使用List集合来实现

[java]??
?
  1. al=new?ArrayList();
  2. ?lt=();??
  3. s2.grade)??

对List集合框架的总结:

,而不需要迭代。

方法,所以在类中需要进行覆写。

?

  • 方法。所以需要自定义一个比较器类,定义自己的比较规则。

    2、使用Set集合来实现

    ?
  • ?ts=(
  • ?it=ts.iterator();??

  • 对TreeSet的总结:

    (1)自定义一个比较器类,比如class Com implements{ } ?,实现方法,在其中定义比较规则。

    (2)步骤:将add进TreeSet中的元素实现Comparable接口,并且覆盖compareTo方法。这种顺序也是元素的自然顺序,或者叫做默认顺序。

    方法1和方法2的区别:

    两种方法各有优劣,用Comparable 简单,只要实现Comparable 接口的对象直接就成为一个可以比较的对象,但是需要修改源代码。


    ?
  • ?hs=();??
  • li=
  • s2.grade)??





























  • 对HashSet的总结:

    2、HashSet是如何保证元素唯一性的呢? 答:是通过元素的两个方法,hashCode和equals来完成。 如果元素的HashCode值相同,才会判断equals是否为true。如果元素的hashcode值不同,不会调用equals。

    3、对HashSet的排序,通过将Set集合转化为List集合,借助Collections.Sort( )方法实现排序。

    ?
  • ?tm=();??
  • ?k=tm.keySet();??
  • ?it=k.iterator();??
  • {??
  • o.grade)????
  • ?


    <span style="font-family:Arial; font-size:18px"><span style="font-family:'Courier New'; background-color:rgb(240,240,240)">输出结果为:<span style="font-family:Arial; font-size:14px">
    <p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Arial; font-size:14px">

    Map集合的取出原理:将map集合转成set集合。在通过迭代器取出。

    keySet:将map中所有的键存入到Set集合。因为set具备迭代器。所有可以迭代方式取出所有的键,在根据get方法。获取每一个键对应的值。

    > entrySet:将map集合中的映射关系存入到了set集合中,而这个关系的数据类型就是:Map.Entry

    (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读