泛型与集合框架

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

泛型与集合框架

1.实验目的

1、掌握LinkedList类和Collections类提供的用于排序和查找链表中

的数据的方法

2、掌握用散列映射来存储数据

3、掌握TreeSet类的使用

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程序代码,编写好完整的程序文档,最后运行得到的相关文件,把实验所得文件一起打包上交。(压缩包的文件名为:学号和名字,如2010001245452张三.zip|rar)

附录:

实验1 按身高排序

模板代码

Student.java

public class Student implements Comparable<【代码】>{

int height=0;

String name;

Student(String n,int h){

name=n;

height=h;

}

public int compareTo(Student b){

【代码】

}

}

FindStudent.java

import java.util.*;

public class FindStudent {

public static void main(String[] args) {

List list=new LinkedList();

list.add(new Student("张三",188));

list.add(new Student("李四",178));

list.add(new Student("王五",198));

Iterator iter=list.iterator();

System.out.println("排序前,链表中的数据");

while(iter.hasNext()){

Student stu=【代码】; //依次遍历

System.out.println(+"身高:"+stu.height);

}

【代码】; //排序

System.out.println("排序后,链表中的数据");

iter=list.iterator();

while(iter.hasNext()){

Student stu=【代码】; //依次遍历

System.out.println(+"身高:"+stu.height);

}

Student zhaolin=new Student("zhao xiao lin",178);

int index=Collections.binarySearch(list,zhaolin,null);

if(index>=0){

System.out.println(+"和链表中"+list.get(index).name+"身高相同");

}

}

}

实验2 英汉小字典

模板代码

Dictionary.java

public class Dictionary {

public static void main(String[] args) {

WindowWord win = new WindowWord();

win.setTitle("英汉小字典");

}

}

WindowWord.java

import java.awt.*;

import javax.swing.*;

public class WindowWord extends JFrame{

JTextField inputText,showText;

WordPolice police;

WindowWord(){

setLayout(new FlowLayout());

inputText=new JTextField(6);

showText=new JTextField(6);

add(inputText);

add(showText);

police=new WordPolice();

police.setJTextField(showText);

inputText.addActionListener(police);

setBounds(100,100,400,280);

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

WordPolice.java

import java.awt.event.*;

import javax.swing.*;

import java.io.*;

相关文档
最新文档