《集合框架及泛型》上机实践内容
实验十 泛型与集合框架
实验十泛型与集合框架1.实验目的1、掌握LinkedList<E>类和Collections类提供的用于排序和查找链表中的数据的方法2、掌握用散列映射来存储数据3、掌握TreeSet<E>类的使用2.实验内容1、根据附录里的源代码,按照注释要求,完成代码填空,使程序能够运行得出结果。
1)实验1 按身高排序2)实验2 英汉小字典3)实验3 演出节目单4)实验4输出args[]中的单词2、设计编写程序完成以下任务。
1)仿照实验1编写TV类,要求通过实现Comparable接口规定该类的对象的大小关系,按price值得大小确定大小关系,即电视机按其价格确定之间的大小关系。
2)从控制台输入若干个单词(输入回车结束)放入集合中,将这些单词排序后(忽略大小写)打印出来。
知识点:List接口的实现类、String常用方法3)请使用LinkedList来模拟一个队列(先进先出的特性):(1)拥有放入对象的方法void put(Object o)(2)取出对象的方法Object get()(3)判断队列当中是否为空的方法boolean isEmpty();并且,编写测试代码,验证你的队列是否正确。
知识点:List接口的实现类LinkedList常用方法4)在一个列表中存储以下元素:apple,grape,banana,pear(1)返回集合中的最大的和最小的元素(2)将集合进行排序,并将排序后的结果打印在控制台上知识点:Collections类中的方法3.实验步骤略4.评分标准1.A——内容功能完善,编程风格好,人机接口界面好;2.B——内容功能完善,编程风格良好,人机接口界面良好;3.C——完成必做内容;4.D——能完成必做内容;5.E——未按时完成必做内容,或者抄袭(雷同者全部为E).参照书上实验按模版要求,将【代码】替换为Java程序代码,编写好完整的程序文档,最后运行得到的相关文件,把实验所得文件一起打包上交。
集合与泛型上机练习的PPT
∙使用Hashtable集合对象存储电脑信息∙员工数据输入第一部分练习1:使用Hashtable对象存储数据项问题编写一个电脑信息类:包括电脑的型号、价格和出厂日期。
程序应根据用户输入的型号来显示相应的电脑信息。
要求使用Hashtable对象存储电脑信息,并且按照型号排列输出,可以输入一个型号,程序检查判断集合中是否存在该型号的电脑,如果存在则显示具体信息。
分析指导教师分析解题思路可以创建一个包含电脑型号、价格和出厂日期的类Computer,电脑的详细信息再作为一个元素存在Hashtable集合中排列输出可以通过下面这种方式输出:(1)创建一个基于控制台的C#应用程序,命名为“HashtableExm”。
(2)创建Computer类。
(3)完整的代码如下:(4)通过从菜单中选择“生成”→“生成解决方案”,来生成该解决方案。
(5)通过从菜单中选择“调试”→“开始执行(不调试)”选项来执行此应用程序。
程序运行效果图指导教师检查学生进度练习2:员工数据输入问题在一个公司的员工管理系统中,通常会通过窗体输入员工的信息,包括员工的编号,姓名,部门,工资等情况。
现不使用数据库技术,使用SortedLis t来存储不同员工的信息,并且,录入的员工都显示在一个列表框中,还可以删除列表框中的员工,但是同时要删除SortedList对象中的员工,因此SortedLis t对象中的数据要与类表框的数据同步。
界面要求如图:员工信息输入在左边的文本框中输入数据以后,单击“添加”按钮可以把数据添加到SortedList对象中,同时姓名添加到右边列表框中;在右边的列表框中选择一个姓名信息,单击下方的“删除”按钮,可以把该员工删除,同时,SortedList对象中的员工信息也被删除。
推荐步骤:(1)先创建一个员工类Employee来保存员工属性。
(2)创建一个窗体,对照界面,添加相应的控件及其事件。
(3)窗体类完整的代码如下:(4)生成和执行此应用程序,效果如下图所示:程序运行结果图。
java实验6泛型与集合框架
java实验6泛型与集合框架
实验6 泛型与集合框架
一、实验目的
(1)掌握泛型与集合框架。
二、实验环境
JDK1.6+Eclpise3.2
三、实验内容
1、建立一个线性表,依次向线性表中输入数据元素1,2,3,……10,然后删除数据元素5,
最后依次显示当前线性表中的数据元素。
2、建立一个线性表,依次向线性表中插入15个数据元素,每个元素都是两位的随机整数,
然后设计算法编写程序使线性表左端的元素都是偶数,右边的元素都是奇数,最后依次显示当前线性表中的数据元素。
3、建立一个线性表,依次向线性表中插入6个数据元素,每个元素都是两位的随机整数,
依次显示当前线性表中的数据元素,然后使线性表置逆,再依次显示当前线性表中的数据元素。
4、使用堆栈结构编写十进制整数到R(2、8、16)进制整数的数制转换程序。
5、编写一个程序,将链表中的学生英语成绩单存放到一个树集中,使得按成绩自动排序,
并输出排序结果。
6、有10个U盘,有两个重要的属性:价格和容量。
编写一个应用程序,使用TreeMap
类,分别按照价格和容量排序输出10个U盘的详细信息。
7、题目要求:对于给定的一个字符串的集合,格式如:
{aaa bbb ccc},{bbb ddd},{eee fff},{ggg},{ddd hhh}
要求将其中交集不为空的集合合并,要求合并完成后的集合之间
无交集,例如上例应输出:
{aaa bbb ccc ddd hhh},{eee fff},{ggg}
四、实验结果
五、实验总结:。
训练师脚本:如何使用集合和泛型集合
脚本_ 如何使用集合和泛型集合第1页PPT(训练师站在演讲台正中央,精神饱满,声音洪亮)大家好,今天我们来学习ArrayList和Hashtable 。
(切换PPT)第2页PPT数组有哪些局限呢,数组是固定大小的,不能伸缩。
虽然System.Array.Resize这个泛型方法可以重置数组大小,但是该方法是重新创建新设置大小的数组,用的是旧数组的元素初始化。
随后以前的数组就废弃!而集合却是可变长的。
数组要声明元素的类型,集合类的元素类型却是object。
数组可读可写不能声明只读数组。
集合类可以提供ReadOnly方法以只读方式使用集合。
数组要有整数下标才能访问特定的元素,然而很多时候这样的下标并不是很有用。
集合也是数据列表却不使用下标访问。
很多时候集合有定制的下标类型,对于队列和栈根本就不支持下标访问!(切换PPT)第3页PPT能否维护一个动态维护长度的集合呢?我们今天学习新的对象ArrayListList,在新增元素操作时,ArrayList的容量可以根据需要自动扩充,它的索引会根据你的扩展而重新进行分配和调整。
所有我们说ArrayList是动态的数组,可以动态的增加数组的长度,对应保存未知个数的一系列数据使用ArrayList非常方便。
(切换PPT)第4页PPTArrayList非常类似于数组,常有人称之为数组列表,其类来自于System.Collections 命名空间。
由于数组的容量是固定的,这样当我们想添加新的元素时,需要对数组重新进行定义。
为了避免这样的麻烦,我们提出了ArrayList。
(切换PPT)如何在ArrayList中添加元素呢,首先实例化对象,然后使用Add方法添加元素。
具体添加的方法ArrayList对象。
在调用对应的Add方法。
代码演示MySchool,讲解添加元素的方法。
(切换PPT)第6页PPT如何访问ArrayList的元素呢,通过指定索引下标,来取得对象,ArrayList第一个对象的索引是0,但是取到ArrayList里存放的数据后,不能直接赋值给Student对象,需要牵制进行类型转换。
学号姓名--集合框架与泛型实验报告
浙江大学城市学院实验报告课程名称面向对象程序设计实验项目名称集合框架与泛型学生姓名专业班级学号一. 实验目的和要求1. 了解Java集合框架的接口和实现类2. 理解泛型类、泛型接口、泛型方法的特点3. 掌握List<E>接口及其实现类LinkedList<E>、ArrayList<E>4. 了解Set<E>接口及其实现类HashSet<E>、TreeSet<E>5. 了解Map<K,V>及其实现类HashMap<K,V>、TreeMap<K,V>二. 实验内容1. 分析Java集合框架的接口和实现类的组成2. 分析泛型类、泛型接口、泛型方法的特点3. 编程实现:设计学生管理类StudentManager(用List集合管理学生对象)4. 选作-编程实现:设计学生管理类StudentManager(用Set集合管理学生对象)5. 选作-编程实现:设计学生管理类StudentManager(用Map管理学生对象)三. 实验结果与分析(可将程序运行结果截屏,也可分析运行结果)1. 分析Java集合框架的接口和实现类的组成请查阅书籍和Java帮助文档,说明Java集合框架的接口组成以及它们的继承关系,并针对每个接口给出具体的实现类。
答:2. 分析泛型类、泛型接口、泛型方法的特点请查阅书籍和Java帮助文档,举例说明泛型类、泛型接口、泛型方法的特点。
答:3. 编程实现:设计学生管理类StudentManager(用List集合管理学生对象)。
StudentManager类的功能包括添加学生、查询学生、删除学生、统计学生成绩等。
需要设计表示学生对象的Student类,并用LinkedList或ArrayList集合来管理可被数量的学生对象。
另外还需要设计测试类Test来验证StudentManager的功能。
JAVA实验报告材料-集合框架及泛型机制
Java语言程序设计C实验报告集合框架及泛型机制学生姓名专业、班级________________________________________ 指导教师 _______________________________________ 成绩_______________________________计算机与信息工程学院年月日一、实验目的学习课程相关章节知识,通过上机练习,掌握以下知识:1.掌握List 接口下ArrayList 及LinkedList 的使用方法。
2.掌握Map 接口下HashMap 及HashTable 的使用方法3.掌握集合中泛型的使用二、实验内容利用集合完成象数据库那样存储数据,并且可以简单查询,利用map 存储学生信息,字段如下:id ,name,age ,实现步骤:(1)创建类,类图如下:2)在main 方法编写逻辑代码3)运行程序并测试结果package ;public class Student {private String name ;private int age ;private String id ;public String getName() {return namepublic void setName(String name ) {this .name = name ;}public int getAge() {return age ;}public void setAge( int age ) {this .age = age ;}public String getId() {return id ;}public void setId(String id) {this .id = id;}public Student(String name , int age , String id ) { super ();this .name = name ;this .age = age ;this .id = id;}public void sayHi(){System. out .println( "name=" + this .getName()+ "age=" + this .getAge()+ " "+ "id=" + this .getId());}//Databace 类package ;import java.util.Collection;import java.util.HashMap;import java.util.Iterator;public class Databace {private Student a;public Databace() {super ();map = new HashMap<String,Student>();}public Student getA() {return a;}public void setA(Student a) {this .a = a;}HashMap<String,Student> map ;public void delete(){ID" );System. out .println( " 请输入要删除表中元素String id =Test. sc.next();if (map .containsKey( id)){map .remove( id);Collection<Student> c= map .values();IteratorvStude nt> it= c.iterator();while (it .hasNext()){a= it .n ext();a.sayHi();}}else{System. out .println("表中没有该元素");}}public void in sert(){System. out .println("按顺序输入id、age、name");String name =Test. sc.next();int age =Test. sc.n ext In t();String id =Test. sc.next();a= new Student( name ,age ,id );map .put( id , a);System. out .println("成功的插入一条记录”);public void update(){System. out .println("请输入要修改表中元素ID");String id =Test. sc.next();if (map .containsKey( id)){map .remove( id);System. out .println("按顺序输入name,age,id");id =Test. sc.next();String name =Test. sc.next();int age =Test. sc.nextInt();a= new Student( id ,age ,name );map .put( id , a);}else{System. out .println("表中没有该元素");}}public void select()System. out .println("请输入要查询的方式 1.查询单行 2.查询全部"); int i=Test. sc.nextInt();switch (i){case 1:{System. out .println("请输入要查询表中元素ID");String id =Test. sc.next();{a= map .get( id);a.sayHi();}else{System. out .println("表中没有该元素");}}break ;case 2:{Collection<Student> c=map .values();Iterator<Student> it= c.iterator();while (it .hasNext()){a= it .next();a.sayHi();}}break ;}}}//testpackage ;import java.util.*;public class Test {/*** @param args */public static Scanner sc= new Scanner(System. public static void main(String[] args ){// TODO Auto-generated method stuint i=0;Databace d = new Databace();while (i==0){int j=Test. sc.nextInt(); switch (j){case 1:d .insert(); breakcase 2: d .select(); breakcase 3: in);System. out .println( System. out .println( System. out .println( System. out .println( System. out .println( "1.储存学生信息") "2.查询学生信息") "3.修改学生信息") "4.删除学生信息") "退出");d .update(); breakcase 4:d .delete(); break default :i=1;}}}}提示:用id 做map 集合的键部分,用student 对象做map 集合的值部分效果显示:三、实验思想四、实验结果五、实验心得。
集合框架编程实验报告
一、实验目的1. 理解Java集合框架的基本概念和结构。
2. 掌握常用集合类(如ArrayList、LinkedList、HashSet、HashMap等)的使用方法。
3. 熟悉集合框架中的迭代器、比较器、集合工具类等高级特性。
4. 通过实际编程练习,提高对集合框架的运用能力。
二、实验环境1. 操作系统:Windows 102. 编程语言:Java3. 开发工具:Eclipse三、实验内容1. 创建一个包含整数的ArrayList集合,并添加、删除、查找元素。
2. 使用LinkedList实现一个简单的栈和队列。
3. 创建一个包含字符串的HashSet集合,并实现元素的唯一性。
4. 创建一个HashMap集合,存储学生信息(学号作为键,姓名作为值)。
5. 使用迭代器遍历集合元素。
6. 实现自定义比较器,对集合元素进行排序。
7. 使用集合工具类对集合进行操作。
四、实验步骤及代码实现1. 创建一个包含整数的ArrayList集合,并添加、删除、查找元素。
```javaimport java.util.ArrayList;import java.util.List;public class ArrayListTest {public static void main(String[] args) {List<Integer> list = new ArrayList<>();// 添加元素list.add(1);list.add(2);list.add(3);// 删除元素list.remove(1);// 查找元素int index = list.indexOf(2);System.out.println("元素2的索引:" + index); }}```2. 使用LinkedList实现一个简单的栈和队列。
```javaimport java.util.LinkedList;import java.util.Queue;import java.util.Stack;public class LinkedListTest {public static void main(String[] args) {Stack<Integer> stack = new Stack<>();Queue<Integer> queue = new LinkedList<>();// 栈操作stack.push(1);stack.push(2);stack.push(3);System.out.println("栈顶元素:" + stack.peek()); // 队列操作queue.offer(1);queue.offer(2);queue.offer(3);System.out.println("队列头元素:" + queue.peek()); }}```3. 创建一个包含字符串的HashSet集合,并实现元素的唯一性。
实验八集合、泛型使用
实验八集合、泛型使用实验报告八实验课程面向对象程序设计集合、泛型使用成绩项目实验 6/6 学号姓名赵旭东 201531060753 日期专业指导信息管理与信息系统15级2班杨力班级教师一【实验目的】1、初步掌握常用集合的创建和操作方法。
2、初步掌握索引器的定义域使用。
3、初步掌握泛型接口、泛型类、泛型属性和泛型方法的使用。
二【实验内容】使用集合类需要加上名称空间using System.Collection1、 arraylist类的使用动态数组使用方便,仔细阅读下面的代码了解arraylist的使用(1)创建动态数组ArrayList aList=new ArrayList(); //大小不固定,根据增加和删除元素自动扩展(2)数组增加元素aList.Add(3); //aList.Add(stu1);// 元素使对象(3)取得动态数组实际元素个数 count属性for (int i = 0; i < aList.Count;i++ ) //Coount 熟悉确定元素实际个数Console.WriteLine(aList[i]); //输出每个元素 aList[i]表示数组中第i 的元素的值Student st1st1=(Student)aList[0];//如果数组中存放对象需要进行强制转换(4)insert 方法在指定位置插入元素aList.Insert(0, 5); //在下标为0的位置插入5 后面的元素自动后移(5)Remove(object obj);从ArrayList中移除特定对象的第一个匹配项,注意是第一个aList.Add("a");aList.Add("b");aList.Add("c");aList.Add("d");aList.Add("c");aList.Remove("c");for(int i=0;i<aList.Count ;i++)Console.Write(aList[i]);输出 abdc(6) RemoveAt(int index);移除ArrayList的指定索引处的元素aList.Add("a");aList.Add("b");aList.Add("c");aList.Add("d");aList.Add("e");aList.RemoveAt(0);//删除下标0的元素,后面元素依次向前移动结果为bcde(7)Sort();对ArrayList或它的一部分中的元素进行排序。
.NET集合与泛型实验报告
实验报告课程名称.NET程序设计实验项目.NET集合与泛型专业计科班级 1 姓名学号指导教师实验成绩年月日一、实验目的(介绍本次实验的预期目标,完成的功能)1.初步掌握常用集合的创建和操作方法。
2.初步掌握索引器的定义与使用。
3.初步掌握泛型接口、泛型类、泛型属性和泛型方法的使用。
4.初步理解C#程序的特点。
二、实验过程(介绍实验中涉及的关键过程,如核心算法、数据结构等)1.编写一个电脑信息类:包括电脑的型号、价格和出厂日期。
程序应根据用户输入的型号来显示相应的电脑信息。
要求使用Hashtable对象存储电脑信息,并且按照型号排列输出,可以输入一个型号,程序检查判断集合中是否存在该型号的电脑,如果存在则显示具体信息。
并可以通过输入型号,删除某型号的电脑。
选择“文件”→“新建”→“项目”菜单命令,弹出“新建项目”对话框,在“模板”列表框中选择“控制台应用程序”。
首先创建一个Computer类,属性有电脑型号、价格、出厂日期,构造函数里赋值。
代码如图1-1所示:图1-1 Computer类源代码然后写一个静态方法,将电脑的详细信息再作为一个元素存在Hashtable 集合中。
代码如图1-2所示:图1-2 “输入电脑信息”方法源代码编写一个按型号排序电脑信息的静态方法,借助ArrayList的排序功能来实现,并且在屏幕打印出排序后的电脑信息。
如图1-3所示:图1-3 “按电脑型号排序”方法源代码编写一个查询电脑信息的静态方法,用户需要输入电脑型号,如果存在该型号的电脑就在屏幕打印该电脑的详细信息,如果不存在就提示用户“您所输入的型号不存在!”。
如图1-4所示:图1-4 “查询电脑信息”方法源代码编写一个删除电脑信息的静态方法,用户需要输入电脑型号,如果存在该型号的电脑就删除对应的电脑信息,并提示“该型号电脑信息已删除!”。
如果不存在就提示用户“您所输入的型号不存在!”。
如图1-5所示:图1-5 “删除电脑信息”方法源代码最后编写了一个菜单方法,用户可以在屏幕输入选项来执行相应功能。
集合及泛型的使用实验
集合及泛型的使用实验1、在main方法中运用ArrayList实现三人斗地主游戏中的发牌功能,具体如下:(1) 创建两个String类型数组,其中一个用于存储牌的花色("黑桃", "红桃", "梅花", "方块"四种花色),一个用于存储牌的数字("A", "2", "3", "4",..."K"十三种数字);(2) 创建一个ArrayList集合作为牌盒,先将不同花色不同数字的牌循环添加到集合中,最后别忘了将”大王”,”小王”也添加到ArrayList集合中;(3) 用Collections工具类的shuffle()方法洗牌。
如:Collections.shuffle(al) //al为一集合对象,该方法用于打乱al中元素的顺序(4) 创建三个ArrayList集合作为三个人的牌的集合,并循环发牌,共发51张牌,留三张底牌;(5) 打印出三个人的牌和集合中留的三张底牌。
mport java.util.ArrayList;import java.util.Collections;import java.util.List;public class PokerTest{public static void main(String[] args){ArrayList<String> box = new ArrayList<String>();String[] arr = {"黑桃","红桃","梅花","方块"};String[] arr2 = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};for (int i = 0; i < arr.length; i++){for (int j = 0; j < arr2.length; j++){box.add(arr[i]+arr2[j]);}box.add("大王");box.add("小王");}Collections.shuffle(box);ArrayList<String> zhangsan = new ArrayList<String>();ArrayList<String> lisi = new ArrayList<String>();ArrayList<String> me = new ArrayList<String>();for (int i = 0; i < box.size()-3; i++) {if(i%3 == 0) {zhangsan.add(box.get(i));}else if(i%3 == 1) {lisi.add(box.get(i));}else if(i%3 == 2) {me.add(box.get(i));}}System.out.println("zhangsan:"+zhangsan);System.out.println("lisi:"+lisi);System.out.println("me:"+me);System.out.println("底牌:");System.out.println(box.get(box.size()-1));System.out.println(box.get(box.size()-2));System.out.println(box.get(box.size()-3));}}2、按要求完成功能:(1) 设计Employee类,该类有成员变量(属性)工号—eno(String类型)、姓名—name(String类型)、年龄—age(int类型)、工资—salary(double类型)等,且为私有的,该类有对成员变量(属性)初始化的构造方法、设置成员变量(属性)的set方法以及获得成员变量(属性)的get方法;(2) 创建3个Employee对象,基本信息如下:工号姓名年龄工资001 张三 25 3000002 李四 27 4000003 王五 28 5500(3) 创建泛型的Map集合,保存以上三个Employee对象,其中Key为工号,value为Employee对象,对该Map进行遍历,输出所有职工信息。
Java集合框架实验报告
浙江大学城市学院实验报告课程名称Java高级程序设计实验项目名称Java集合框架实验学生姓名专业班级学号一、实验目的1.理解Java集合框架的特点、接口与类之间的关系2.掌握Java集合框架的List接口,以及List接口的重要实现类LinkedList、ArrayList3.掌握Java集合框架的Set、SortedSet接口,以及重要实现类HashSet与TreeSet4.掌握Java集合框架的Map、SortedMap接口及其重要实现类HashMap、TreeMap5.掌握Java集合框架的Collection与Iterator接口的特点与使用方式二、实验内容1、使用List管理对象集合2、使用Map管理对象集合3、使用Set管理对象集合4、设计一个自定义的集合类三、实验步骤1、在Eclipse中新建工程(即项目)2、使用List管理对象集合1)新建一个包listExample2)在这个包中新建三个类:Student类,StudentList类,StudentListTest类。
参考代码:, ,3)完善上面三个类,相关要求参考源代码程序的注释,即根据要求修改源代码程序,给出具体的实现代码(不使用泛型类)。
void addStudent(Student student){qualsIgnoreCase()))a=false;}if(a==true)(student);qualsIgnoreCase(id))(stud);}}void deleteStudentByName(String name){qualsIgnoreCase(name))(stud);}}void deleteStudentByAge(int age){qualsIgnoreCase(name))a++;}Student[] st=new Student[a];int b=0;for(int i=0;i<();i++){Student stud = (Student)(i);if().equalsIgnoreCase(name)){st[b]=stud;b++;}}return st;}Student[] findByAge(int age){int a=0;for(int i=0;i<();i++){Student stud = (Student)(i);if()==age)a++;}Student[] st=new Student[a];int b=0;for(int i=0;i<();i++){Student stud = (Student)(i);if()==age){st[b]=stud;b++;}}return st;}4)新创建listExample2包,重新设计设计上述程序(新程序都属于这个包),这时需要使用泛型类,即出现的List、ArrayList或LinkedList都使用泛型。
自-实验六:Java集合与泛型完整
实验六Java集合与泛型一、实验目的1)掌握集合的概念、体系结构、分类及使用场景2)了解Set接口及主要实现类(HashSet、TreeSet)3)了解List接口及主要实现类(ArrayList、LinkedList、Vector)4)掌握ArrayList的使用5)掌握ArrayList与Vector的区别6)了解Map接口及主要实现类(HashMap、TreeMap、HashTable) 7)掌握HashMap的使用8)掌握HashMap与HashTable的区别二、实验环境JDK1.6+Eclpise3.2三、实验准备1)复习课件中理论知识2)练习课堂所讲的例子四、实验内容1、编写程序练习List集合的基本使用:1) 创建一个只能容纳String对象名为names的ArrayList集合;2)按顺序往集合中添加5个字符串对象:“张三”、“李四”、“王五”、“马六”、“赵七”;3)对集合进行遍历,分别打印集合中的每个元素的位置与内容;4)首先打印集合的大小,然后删除集合中的第3个元素,并显示删除元素的内容,然后再打印目前集合中第3个元素的内容,并再次打印集合的大小。
2、编写程序练习Map集合的基本使用:1)创建一个只能值只能容纳String对象的person的HashMap集合;2)往集合中添加5个“键-值”对象:id—>”1”、name—>”张三”、sex—>”男”、age—>”25”、love—>”爱学Java”3)对集合进行遍历,分别打印集合中的每个元素的键与值;4)首先打印集合的大小,然后删除集合中的键为age的元素,并显示删除元素的内容,并再次打印集合的大小。
五、验证过程及结果1、编写程序练习List集合的基本使用:代码如下:packagezhoupeili;import java.util.*;public class L1{public staticvoidmain(String[] args) {ﻩList names=new ArrayList();names.add("张三");ﻩnames.add("李四");ﻩﻩnames.add("王五");ﻩnames.add("马六");names.add("赵七");for(inti=0; i < names.size(); i++){ ﻩSystem.out.println("第"+ (i + 1)+ "条数据为:"+ names.get(i));ﻩﻩ}ﻩSystem.out.println("集合大小为:" + names.size());ﻩﻩnames.remove(2);ﻩfor (int i = 0; i< names.size();i++){ﻩﻩSystem.out.println("第" + (i + 1) + "条数据为:" +names.get(i));ﻩﻩ}ﻩSystem.out.println("第3条数据为:"+ names.get(2));ﻩSystem.out.println("集合大小为:"+ names.size());}}调试结果如下图:2、编写程序练习Map集合的基本使用:代码如下:package zhoupeili;import java.util.*;import java.util.Map.Entry;public class L2 {public static void main(String[] args) {ﻩMapperson=new HashMap();person.put("id", "1");ﻩﻩperson.put("name","张三");person.put("sex","男");person.put("age","25");person.put("love","爱学Java");Iterator it =person.entrySet().iterator();while(it.hasNext()){Map.Entry entry=(Entry)it.next();ﻩSystem.out.println("键:" +entry.getKey()+ ",值:"+ entry.getValue());}System.out.println("集合大小为:"+person.size());person.remove("age");System.out.println("age:"+ person.get("age"));System.out.println("集合大小为:"+person.size());ﻩ}}调试结果如下图:六、实验感想Map中每项都是成对出现的,它提供了一组键值的映射。
Java程序设计实战案例教程 第22章 集合框架和泛型
在列表的开头插入指定元素,该方法从JDK1.6开始是Deque接口中的 方法
缺点:空间是连续的,删除或插入元素,需要大量移动元素
4
该类是JDbKo1o.l2e版an,线off程er不La同st步(E的e,) 在多将线指程定操元作素时添,加会到提列表高的访末问尾效,率作,用但与会ad降d(低E 程e)序方的法的安功全能性相同,
ListIterator接口的产生 在使用迭代器对象遍历集合时,使用 集合的添加方法,试图在遍历的过程中添 加无素,则会出现并发修改异常 解决方案:使用迭代器对象遍历集合, 使用迭代器对象添加元素
示例
泛型
为什么需要使用泛型
在向集合中添加元素时进行了向上类型转换转成了Object类型 在进行元素的遍历时,强制进行了向下类型转换,转成了String类型 结论:编译正常,但在运行时,就会产生类型转换异常 解决方案:像数组一样在创建对象时,就明确规则集合中所存储的元素的类型,
方法
描述
List接口常用的实现类
1 ArrayList void addFirst(E e)
在列表的开头插入指定元素
2
继承AbstvroaicdtLiasdtd类Las实t(现E Lei)st接口 将指定元素添加到列表的末尾
3
增底 优加层点数:据遍b结历oo构和le是根an数据组索off引er访Fi问rs效t(率E 高e)
一次性删除集合中的全部对象
8
boolean
removeAll(Collection<?> c) 将两个集合中相同的对象删除
9
boolean
retainAll(Collection<?> c) 将两个集合中不相同的对象删除
JAVA实验报告-集合框架及泛型机制
Java语言程序设计C实验报告集合框架及泛型机制学生姓名专业、班级指导教师成绩计算机与信息工程学院年月日一、实验目的学习课程相关章节知识,通过上机练习,掌握以下知识:1.掌握List接口下ArrayList及LinkedList的使用方法。
2.掌握Map接口下HashMap 及HashTable的使用方法3.掌握集合中泛型的使用二、实验内容利用集合完成象数据库那样存储数据,并且可以简单查询,利用map存储学生信息,字段如下: id ,name,age,实现步骤:(1)创建类,类图如下:(2)在main方法编写逻辑代码(3)运行程序并测试结果package com、cn;public class Student {private String name;private int age;private String id;public String getName() {return name;}public void setName(String name) {this、name = name;}public int getAge() {return age;}public void setAge(int age) {this、age = age;}public String getId() {return id;}public void setId(String id) {this、id = id;}public Student(String name, int age, String id) {super();this、name = name;this、age = age;this、id = id;}public void sayHi(){System、out、println("name="+this、getName()+"age="+this、getAge()+" "+"id="+this、getId());}}//Databace类package com、cn;import java、util、Collection;import java、util、HashMap;import java、util、Iterator;public class Databace {private Student a;public Databace() {super();map=new HashMap<String,Student>();}public Student getA() {return a;}public void setA(Student a) {this、a = a;}HashMap<String,Student> map;public void delete(){System、out、println("请输入要删除表中元素ID");String id=Test、sc、next();if(map、containsKey(id)){map、remove(id);Collection<Student> c=map、values();Iterator<Student> it=c、iterator();while(it、hasNext()){a=it、next();a、sayHi();}}else{System、out、println("表中没有该元素");}}public void insert(){System、out、println("按顺序输入id、age、name");String name=Test、sc、next();int age=Test、sc、nextInt();String id=Test、sc、next();a=new Student(name,age,id);map、put(id, a);System、out、println("成功的插入一条记录");}public void update(){System、out、println("请输入要修改表中元素ID");String id=Test、sc、next();if(map、containsKey(id)){map、remove(id);System、out、println("按顺序输入name,age,id");id=Test、sc、next();String name=Test、sc、next();int age=Test、sc、nextInt();a=new Student(id,age,name);map、put(id, a);}else{System、out、println("表中没有该元素");}}public void select(){System、out、println("请输入要查询的方式1、查询单行2、查询全部");int i=Test、sc、nextInt();switch(i){case 1:{System、out、println("请输入要查询表中元素ID");String id=Test、sc、next();if(map、containsKey(id)){a=map、get(id);a、sayHi();}else{System、out、println("表中没有该元素");}}break;case 2:{Collection<Student> c=map、values();Iterator<Student> it=c、iterator();while(it、hasNext()){a=it、next();a、sayHi();}}break;}}}//testpackage com、cn;import java、util、*;public class Test {/*** @param args*/public static Scanner sc=new Scanner(System、in);public static void main(String[] args){// TODO Auto-generated method stuint i=0;Databace d=new Databace();while(i==0){System、out、println("1、储存学生信息");System、out、println("2、查询学生信息");System、out、println("3、修改学生信息");System、out、println("4、删除学生信息");System、out、println("退出");int j=Test、sc、nextInt();switch(j){case 1:d、insert();break;case 2:d、select();break;case 3:d、update();break;case 4:d、delete();break;default:i=1;}}}}提示:用id做map集合的键部分,用student对象做map集合的值部分效果显示:三、实验思想四、实验结果五、实验心得。
《集合框架及泛型》上机实践内容
《集合框架及泛型》作业一、根据课上讲解内容,完成演示示例和课堂练习1、ArrayList获取并打印新闻标题需求说明:按照以下实现的步骤,使用ArrayList获取和打印新闻标题,显示效果如下图所示:(1)创建多个各类新闻标题对象,包含ID、名称和创建者三个属性;(2)创建存储各类新闻标题的集合对象;(3)按照顺序依次添加各类新闻标题,使用add()方法;(4)获取新闻标题的总数,使用size()方法;(5)根据位置获取相应新闻标题、逐条打印每条新闻标题的名称,使用for 循环遍历。
2、ArrayList存储狗狗信息需求说明:按照以下实现的步骤,使用ArrayList存储狗狗信息,使用ArrayList的方法对狗狗信息进行删除、读取和判断,显示效果如下图所示:(1)存储多条狗信息,获取狗总数,逐条打印出各条狗信息;(2)删除指定位置的狗,使用remove()方法;(3)判断集合中是否包含指定狗,使用contains()方法;3、LinkedList添加和删除新闻标题需求说明:在作业1的基础上,换用LinkedList存储新闻数据,并且使用LinkedList的getFirst()和getLast()方法获取第一条和最后一条数据,以及removeFirst()和removeLast()方法删除第一条和最后一条数据,输出效果如下图所示。
4、集合头尾位置删除和条件狗信息需求说明:按照作业3的实现方式和所用到LinkedList的方法,实现狗狗信息的更新并输出,输出效果如图所示。
5、使用Iterator和增强型for循环遍历Set需求说明:按照以下实现的步骤,使用Iterator和增强型for循环遍历Set,输出效果如下图所示:(1)创建多个各类新闻标题对象,包含ID、名称和创建者三个属性;(2)创建存储各类新闻标题的集合对象;(3)按照顺序依次添加各类新闻标题;(4)获取新闻标题的总数;(5)使用iterator()获取Iterator对象;(6)使用Iterator遍历集合,使用hasNext()方法作为循环条件,判断是否存在另一个可访问的元素;(7)使用增强型for遍历集合;6、HashSet存储狗狗信息需求说明:使用HashSet存储多条狗狗信息,获取狗狗总数,使用Iterator 接口逐条打印出各条狗狗信息,输出效果如图所示。
JAVA集合框架实验报告
JAVA集合框架实验报告Java集合框架是Java编程语言中的一个重要部分,用于存储和处理一组对象。
它提供了一组类和接口,用于管理和操作数据集合。
在本次实验中,我将介绍Java集合框架的常用类和接口,并进行一些实际的操作。
Java集合框架中的一些常用类包括ArrayList、LinkedList、HashSet、TreeSet、HashMap和TreeMap等。
ArrayList是一种动态数组,可以根据需要自动增长和缩小。
LinkedList是一种双向链表,可以在头部和尾部添加和删除元素。
HashSet是一种无序的集合,不允许重复元素。
TreeSet是一种有序的集合,它按照元素的自然顺序进行排序。
HashMap是一种无序的键值对集合,不允许重复键。
TreeMap是一种有序的键值对集合,按照键的自然顺序进行排序。
在实验中,我首先创建了一个ArrayList对象,并使用add(方法向其中添加一些字符串元素。
然后,我使用get(方法和foreach循环遍历了该列表,并打印出其中的元素。
接下来,我创建了一个LinkedList对象,并使用add(, remove(和get(方法对其进行了操作。
接下来,我创建了一个HashSet对象,并使用add(方法向其中添加了一些整数元素。
然后,我使用contains(方法检查了该集合中是否包含一些特定元素,并使用remove(方法将该元素从集合中删除。
最后,我使用size(方法获取了该集合的大小。
在之后的实验中,我创建了一个TreeSet对象,并使用add(方法向其中添加了一些字符串元素。
然后,我使用iterator(方法获取了该集合的迭代器,并使用迭代器遍历了集合中的元素。
接下来,我创建了一个HashMap对象,并使用put(方法将一些键值对添加到该映射中。
然后,我使用get(方法根据键获取对应的值,并使用containsKey(方法检查该映射中是否包含一些特定的键。
实验6 泛型与集合框架_附答案
任务一:用LinkedList存放对象1.利用面向对象的思想,创建以下类:●Person类,包含Person的姓名和身份证号码,覆盖Object类的toString()方法,显示“姓名:XXX 身份证号:XXX”。
●Student类,继承Person类,包含学生的语文、数学、英文课的成绩,并覆盖父类的toString()方法,显示“姓名:XXX 身份证号:XXX 语文:XXX 数学:XXX 英文:XXX”。
●Teacher类,继承Person类,包含教师的工资。
并覆盖父类的toString()方法,显示“姓名:XXX 身份证号:XXX 工资:XXX”。
●public class Person implements Comparable{●String name;●String ID;●Person(String s,String i){●name=s;●ID=i; }●public String toString() {●String str="姓名:"+name+" 身份证号码:"+ID;●return str; }●public int compareTo(Object arg0) {●Person p=(Person)arg0;●return pareTo(p.ID); } }●class Student extends Person {●int Chinese;●int Math;●int English;●Student(String n,String i,int c,int m,int e){●super(n,i);●Chinese=c;●Math=m;●English=e; }●public String toString() {●String str;●str=" 语文成绩:"+Chinese+" 数学成绩:"+Math+" 英语成绩:"+English;●return super.toString()+str;●}●}●class Teacher extends Person{●int salary;●Teacher(String n,String i,int s){●super(n,i);●salary=s;●}●public String toString() {●String str=" 工资"+salary;●return super.toString()+str;●} }2.分别为以上三个类创建对象:3.将这三个对象存放在一个LinkedList对象中:LinkedList<Person> list=new LinkedList<Person>();4.运行示例:public class MyList {public static void main(String[] args) {LinkedList<Person> m=new LinkedList<Person>();Person p=new Person("张三","12310000");Student s=new Student("李四","12320000",89,93,94);Teacher t=new Teacher("王五","12330000",3000);m.add(p);m.add(s);m.add(t);Iterator<Person> i = m.iterator();while(i.hasNext()){System.out.println(i.next());}}}5.练习使用LinkedList的其他方法。
java集合框架实验报告
java集合框架实验报告实验报告:Java集合框架一、实验目的通过本次实验,我们希望达到以下目的:1. 掌握Java集合框架的基本概念和组成。
2. 学会使用Java集合框架中的常用类和接口,如List、Set、Map等。
3. 理解集合框架中的数据结构及其特点。
4. 掌握集合框架中的常用算法和操作。
二、实验内容1. 了解Java集合框架的组成。
2. 实现List接口的ArrayList类和LinkedList类。
3. 实现Set接口的HashSet类和TreeSet类。
4. 实现Map接口的HashMap类和TreeMap类。
5. 使用迭代器和Lambda表达式遍历集合元素。
6. 实现自定义的集合类。
三、实验步骤1. 导入Java集合框架中的常用类和接口。
2. 使用ArrayList和LinkedList实现List接口,并比较它们的性能差异。
3. 使用HashSet和TreeSet实现Set接口,并比较它们的性能差异。
4. 使用HashMap和TreeMap实现Map接口,并比较它们的性能差异。
5. 使用迭代器和Lambda表达式遍历集合元素,理解它们的用法和特点。
6. 实现自定义的集合类,包括添加、删除、查找等操作。
四、实验结果与分析通过本次实验,我们掌握了Java集合框架的基本概念和组成,学会了使用Java集合框架中的常用类和接口,理解了集合框架中的数据结构及其特点,掌握了集合框架中的常用算法和操作。
同时,我们还比较了ArrayList、LinkedList、HashSet、TreeSet、HashMap和TreeMap等类的性能差异,了解了它们的特点和使用场景。
此外,我们还实现了自定义的集合类,进一步加深了对集合框架的理解和应用。
五、实验总结与建议通过本次实验,我们不仅掌握了Java集合框架的基础知识,还学会了如何在实际开发中运用这些知识。
在未来的学习和工作中,我们可以继续深入学习Java集合框架的高级特性,如泛型、并发集合等,以更好地解决实际问题。
java集合框架实验报告 -回复
java集合框架实验报告-回复Java集合框架实验报告引言:在计算机科学领域,集合是一种常用的数据结构,用于存储和处理一组相关的数据。
在Java编程语言中,集合框架提供了一套丰富的类和接口,用于实现不同类型的集合。
本实验旨在通过深入学习和实践Java集合框架,掌握其基本概念和使用方法,并通过实验验证这些概念和方法的有效性。
第一部分:集合框架的概述1) 什么是集合框架?集合框架是一种用于存储和操作数据的类和接口的集合。
它提供了一种统一的方式来管理和操作不同类型的集合,并提供了许多常用的操作,例如添加、删除、查找和遍历等。
2) 集合框架的优势是什么?集合框架具有以下优势:- 提供了一套统一的API,使得开发者可以方便地对集合进行操作。
- 支持各种不同类型的集合,例如列表、集合、映射等,以满足不同的需求。
- 内置了高效的算法和数据结构,使得集合的操作效率更高。
- 集合框架具有良好的扩展性,开发者可以根据需要定制自己的集合实现。
3) 集合框架的基本接口有哪些?集合框架的基本接口包括:- Collection接口:用于表示一组对象的集合,提供了基本的操作方法,例如添加、删除和查找等。
- List接口:继承自Collection接口,用于表示有序的、可重复的集合。
- Set接口:继承自Collection接口,用于表示无序的、不可重复的集合。
- Map接口:用于表示键值对的集合,每个键对应一个值,键是唯一的。
第二部分:集合框架的主要类和实验1) 集合框架中的主要类有哪些?- ArrayList:实现了可变大小的数组。
它具有快速的随机访问和插入/删除操作的能力。
- LinkedList:实现了双向链表。
它具有快速的插入/删除操作的能力,但在随机访问时性能较差。
- HashSet:使用哈希表实现的无序集合。
它可以在常量时间内执行插入/删除/查找操作。
- TreeSet:使用红黑树实现的有序集合。
它可以保持元素的排序状态,并支持范围查找操作。
实验05 集合类与泛型 实验报告
实验05 集合类与泛型实验报告实验五集合类与泛型1.实验目的(1)掌握ArrayList类与LinkedList类的用法;(2)掌握TreeSet类的用法;(3)掌握Map接口及其实现类的用法(4)掌握泛型的用法。
2.实验内容实验题1 有四个类,主类Store在包.nwsuaf.jp.p4中,Mobile、Mp3Player、Product在包.nwsuaf.jp.p4.data中,Mobile、Mp3Player是Product的子类,Product类实现Comparable接口,重写了Comparable接口中方法compareTo,实现了product对象按照价格排序。
基本要求:(1)在主类Store中实例化多个Mobile类与Mp3Player的实例,分别将这些实例用ArrayList与LinkedList存放,最后用StringBuilder存放并将其输出。
(2)用迭代器(iterator)将实例对象输出(要求用加强型for循环)。
实验结果:代码: Store类:package .nwsuaf.jp.p4; import java.util.ArrayList; importjava.util.Arrays; import java.util.Iterator; import.nwsuaf.jp.p4.data.Mobile; import .nwsuaf.jp.p4.data.Mp3Player; import .nwsuaf.jp.p4.data.Product; public class Store { publicstatic void main(String[] args) { Mp3Player p1 = new Mp3Player(\, 399.0f); Mp3Player p2 = new Mp3Player(\, 580.0f); Mp3Player p3 = new Mp3Player(\XMMp3Play(256MB)\, 930.0f); Mobile m1 = new Mobile(\, 1780.0f); Mobile m2= new Mobile(\, 1450.0f); Product[] products = { p1, p2, p3, m1, m2 }; Arrays.sort(products); ArrayList list = new ArrayList(); for (int i = 0;i < products.length; i++) { list.add(products[i]); }// 用StringBuilder输出 StringBuilder text = new StringBuilder(); for (Product product : products) { text.append(product); text.append(\); } System.out.println(\用StringBuilder输出:\); System.out.println(\ + \ + text+ \ + Product.getCount() + \); // 用迭代器输出 Iterator it = list.iterator(); System.out.println(\用迭代器输出:\); System.out.println(\); while(it.hasNext()) { System.out.println(it.next()); } System.out.println(\are\ + Product.getCount() + \products.\); } }Product类:package .nwsuaf.jp.p4.data; @SuppressWarnings(\) public abstractclass Product implements Comparable { private String Name; private Float price; public static int count = 0; public Product(String name, Floatprice) { super(); Name = name; this.price = price; ++count; }public String getName() { return Name; } public void setName(String name) { Name = name; } public Float getPrice() { return price; } public void setPrice(Float price) { this.price = price; } public staticint getCount() { return count; } public static void setCount(int count){ Product.count = count; } @Override public String toString(){ return getName() + \ + getPrice() + \; } public abstract voidoutput(Product p); @Override public int compareTo(Object o) { // TODOAuto-generated method stub Product product = (Product) o; return newFloat(getPrice()).compareTo(product.getPrice()); } public void sell(int i) { // TODO Auto-generated method stub }}Mp3Playert类:public class Mp3Player extends Product { public Mp3Player(String name,Float price) { super(name, price); } @Override public voidoutput(Product p) { System.out.println( Mp3Player.class.toString()); } } Mobile类:package .nwsuaf.jp.p4.data; public class Mobile extends Product{ public Mobile(String name, Float price) { super(name, price); }@Override public void output(Product p){ System.out.println( Mobile.class.toString()); } } 实验题2 项目包含类见实验题1。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《集合框架及泛型》作业
一、根据课上讲解内容,完成演示示例和课堂练习
1、ArrayList获取并打印新闻标题
需求说明:按照以下实现的步骤,使用ArrayList获取和打印新闻标题,显示效果如下图所示:
(1)创建多个各类新闻标题对象,包含ID、名称和创建者三个属性;
(2)创建存储各类新闻标题的集合对象;
(3)按照顺序依次添加各类新闻标题,使用add()方法;
(4)获取新闻标题的总数,使用size()方法;
(5)根据位置获取相应新闻标题、逐条打印每条新闻标题的名称,使用for 循环遍历。
2、ArrayList存储狗狗信息
需求说明:按照以下实现的步骤,使用ArrayList存储狗狗信息,使用ArrayList的方法对狗狗信息进行删除、读取和判断,显示效果如下图所示:(1)存储多条狗信息,获取狗总数,逐条打印出各条狗信息;
(2)删除指定位置的狗,使用remove()方法;
(3)判断集合中是否包含指定狗,使用contains()方法;
3、LinkedList添加和删除新闻标题
需求说明:在作业1的基础上,换用LinkedList存储新闻数据,并且使用LinkedList的getFirst()和getLast()方法获取第一条和最后一条数据,以及removeFirst()和removeLast()方法删除第一条和最后一条数据,输出效果如下图所示。
4、集合头尾位置删除和条件狗信息
需求说明:按照作业3的实现方式和所用到LinkedList的方法,实现狗狗信
息的更新并输出,输出效果如图所示。
5、使用Iterator和增强型for循环遍历Set
需求说明:按照以下实现的步骤,使用Iterator和增强型for循环遍历Set,输出效果如下图所示:
(1)创建多个各类新闻标题对象,包含ID、名称和创建者三个属性;
(2)创建存储各类新闻标题的集合对象;
(3)按照顺序依次添加各类新闻标题;
(4)获取新闻标题的总数;
(5)使用iterator()获取Iterator对象;
(6)使用Iterator遍历集合,使用hasNext()方法作为循环条件,判断是否存在另一个可访问的元素;
(7)使用增强型for遍历集合;
6、HashSet存储狗狗信息
需求说明:使用HashSet存储多条狗狗信息,获取狗狗总数,使用Iterator 接口逐条打印出各条狗狗信息,输出效果如图所示。
7、使用HashMap集合类
需求说明:按照以下实现的步骤,使用HashMap建立国家英文简称和中文全名间的键值映射,并通过key对value进行操作,输出效果如下图所示:(1)使用HashMap存储多组国家英文简称和中文全称的键值对;
(2)显示"CN"对应国家的中文全称;
(3)显示集合中元素个数;
(4)两次判断Map中是否存在"FR"键;
(5)分别显示键集、值集和键值对集;
(6)清空 HashMap并判断;
8、使用Iterator和增强型for循环遍历Map集合
需求说明:按照以下实现的步骤,使用Iterator和增强型for循环遍历Map 集合,输出效果如下图所示:
(1)创建多个狗狗对象;
(2)创建Map集合对象并把多个狗狗对象放入其中;
(3)通过Iterator依次输出集合中所有狗狗的信息;
(4)使用增强型for循环输出集合中所有狗狗的信息;
9、根据学员英文名找到学员对象
需求说明:学士后学员应聘至外企工作,每个学员都会有一个英文名称,对应该学员对象。
按照以下实现的步骤实现通过英文名称,获得该学员对象的详细信息:
(1)创建学员对象,学员属性包括姓名、性别;
(2)创建保存“键-值对”的集合对象;
(3)把英文名称与学员对象按照“键-值对”的方式存储在HashMap中,这里以“Jack”举例;
(4)判断是否存在”Jack”这个键;
(5)如果存在,根据键获取如图所示的相应的值;
10、使用泛型集合
需求说明:使用ArrayList<E>、HashMap<K,V>存储狗狗对象信息,使用Iterator和增强for循环遍历输出狗狗信息,效果如下图所示。
11、使用泛型根据学员英文名找到学员对象
需求说明:在作业9的基础上,使用泛型HashMap<K,V>存储学员数据,使用containsKey()方法判断值的存在,如果存在按照下图效果进行输出。
12、Collections常用方法的使用
需求说明:使用Collections的sort()方法升序打印输出集合中所有元素;
使用Collection的max()方法获得集合中最大的元素;使用Collections的min()方法获得集合中最小的元素;使用Collections的binarySearch()方法获取元素的索引;使用Collections的reverse()方法降序打印输出集合中所有元素。
下图为输出效果示例,你可以自行编写集合中的数据并输出。
13、Collections排序
需求说明:使用Collections的sort方法对list进行排序,排序前和排序后效果如图所示,下图为输出效果示例,你可以自行编写集合中的数据并输出。