以下为《大学学生实验报告书(学生用表)》的无排版文字预览,完整内容请下载
**_*(学生用表)
实验名称
实验七
课程名称
面向对象程序设计(Java)
课程号
***
学院(系)
数学与计***
专业
计算机科学与技术
班级
计某某1202
学生姓名
李某某
学号
***1216
实验地点
二教A501
实验日期
2021.6.1
实验目的
掌握java集合框架的接口类与使用,以及比较器的用法
实验任务要求
1、写明实验题目和实验环境
2、呈现输入和输出结果以及运行界面
3、编程实现,代码尽量优化且简单易懂
4、附源码,并对一些关键语句或方法加上注释
实验内容
下面程序是把一个Employee类中按员工年龄由小到大输出,运行下面程序,分析你所看到的结果。
import java.util.*;
public class Employee implements Comparable{
public String name;
public int age;
public double salary;
public Employee(String name,int age,double salary) {
this.name = name;
this.age = age;
this.salary = salary;
}
public int compareTo(Employee obj){
return this.age-obj.age;
}
public String toString(){
return "["+this.name+","+this.age+","+this.salary+"]";
}
public static void main(String[] args){
Employee[] empList = new Employee[3];
empList[0]= new Employee("李某某",20,3000);
empList[1]= new Employee("王月",19,1800);
empList[2]= new Employee("张某某",19,2200);
Set empSet = new TreeSet();
for(int i = 0; i < empList.length; i ++)
empSet.add(empList[i]);
for(Employee emp:empSet){
System.out.println(emp);
}
}
}
问题:(1)上面程序是否有问题?若有问题应怎样改?
(2)若要改为按工资大小输出,若工资相同,年龄大的在前。应怎样写public int compareTo(Employee obj)中的代码?
2. 编写程序,从键盘上输入段英文句子(里面包含英文以及.,和空格)统计这句子中的单词,并输出如下内容:
(1)一共有多少个单词(不区分大小写)
(2)一共有多少个互不相同的单词(不区分大小写)
代码演示:
(1)
package shiyan7;
import java.util.Set;
内容过长,仅展示头部和尾部部分文字预览,全文请查看图片预览。 hs.add(a);
}
System.out.print("一共有多少个单词(不区分大小写):");
System.out.println(str.length);
System.out.print("一共有多少个互不相同的单词(不区分大小写):");
System.out.println(hs.size());
}
}
图示结果:
/
四、实验分析
成绩
指导教师
甘元驹
日期
2021年 月 日
注:请用A4纸书写,不够另附纸。 第 页,共 页
[文章尾部最后300字内容到此结束,中间部分内容请查看底下的图片预览]请点击下方选择您需要的文档下载。
以上为《大学学生实验报告书(学生用表)》的无排版文字预览,完整内容请下载
大学学生实验报告书(学生用表)由用户“cuisong123”分享发布,转载请注明出处