本科课程【java程序设计】实验4 - 实用工具类编程练习

x33g5p2x  于2022-05-05 转载在 Java  
字(3.1k)|赞(0)|评价(0)|浏览(858)

大家好,我是【1+1=王】, 热爱java的计算机(人工智能)渣硕研究生在读。
如果你也对java、人工智能等技术感兴趣,欢迎关注,抱团交流进大厂!!!
Good better best, never let it rest, until good is better, and better best.

近期会把自己本科阶段的一些课程设计、实验报告等分享出来,供大家参考,希望对大家有帮助。

博客更新至专栏【课程设计实验报告】:https://blog.csdn.net/weixin_43598687/category_11640051.html

一、 实验目的

1、 掌握Scanner类的用法;
2、 掌握字符串类的常用方法;
3、 掌握main方法参数的使用。

二、 实验内容

1. 实验任务

现有职工类Employee,其代码如下:

  1. class Employee{
  2. String name;
  3. int number;
  4. int age;
  5. int salary;
  6. public Employee(String name,int number,int age,int salary){
  7. this.name=name;
  8. this.number=number;
  9. this.age=age;
  10. this.salary=salary;
  11. }
  12. }

其中的四个变量分别表明职工的姓名、编号、年龄、薪水。要求编写类EmployeeTest,在类中使用数组存储若干职工的信息,并有方法分别计算职工年龄、薪水的最大值、最小值和平均值。
程序运行时在命令行中输入两个参数,根据参数返回职工年龄或薪水的信息。
第一个参数若是age表明计算年龄信息,若是salary表明计算薪水信息。
第二个参数若是avg表明计算平均值,若是min表明计算最小值,若是max表明计算最大值。 例如,
若输入以下信息,则表明求职工年龄的平均值: java Employee age avg
若输入以下信息,则表明求职工薪水的最大值: java Employee salary max
其他输入都显示输入错误。

2. 程序设计

  1. import java.util.Scanner;
  2. public class three {
  3. public static void main(String[] args) {
  4. Scanner scanner = new Scanner(System.in) ;
  5. String str1 = scanner.nextLine();
  6. String str2 = scanner.nextLine();
  7. Employee e1 = new Employee("zhang", 1, 18, 2000);
  8. Employee e2 = new Employee("wang", 2, 19, 3000);
  9. Employee e3 = new Employee("li", 3, 20, 4000);
  10. Employee e4 = new Employee("jack", 4, 24, 5000);
  11. Employee e5 = new Employee("zhao", 5, 15, 6000);
  12. Employee[] emp = {e1,e2,e3,e4,e5};
  13. EmployeeTest employeeTest = new EmployeeTest(emp);
  14. if(str2.equals("avg")) {
  15. employeeTest.average(str1);
  16. }else if(str2.equals("max")) {
  17. employeeTest.max(str1);
  18. }else if(str2.equals("min")) {
  19. employeeTest.min(str1);
  20. }else {
  21. System.out.println("输入错误");
  22. }
  23. }
  24. }
  25. class Employee{
  26. String name;
  27. int number;
  28. int age;
  29. int salary;
  30. public Employee(String name, int number, int age, int salary) {
  31. super();
  32. this.name = name;
  33. this.number = number;
  34. this.age = age;
  35. this.salary = salary;
  36. }
  37. }
  38. class EmployeeTest{
  39. Employee emp[];
  40. public EmployeeTest(Employee emp[]) {
  41. this.emp=emp;
  42. }
  43. public void average(String str1) {
  44. int size = this.emp.length;
  45. int sum=0;
  46. double average =0;
  47. if(str1.equals("age")) {
  48. for(int i=0;i<size;i++) {
  49. sum+=this.emp[i].age;
  50. }
  51. average = sum/size;
  52. System.out.println("年龄平均为:" + average);
  53. }else if(str1.equals("salary")) {
  54. for(int i=0;i<size;i++) {
  55. sum+=this.emp[i].salary;
  56. }
  57. average=sum/size;
  58. System.out.println("薪水平均为:" + average);
  59. }
  60. }
  61. public void max(String str1) {
  62. int size = this.emp.length;
  63. int sum=0;
  64. int max =0;
  65. if(str1.equals("age")) {
  66. for(int i=0;i<size;i++) {
  67. if(max<this.emp[i].age) {
  68. max=this.emp[i].age;
  69. }
  70. }
  71. System.out.println("年龄最大为:" + max);
  72. }else if(str1.equals("salary")) {
  73. for(int i=0;i<size;i++) {
  74. if(max<this.emp[i].salary) {
  75. max=this.emp[i].salary;
  76. }
  77. }
  78. System.out.println("薪水最大为:" + max);
  79. }
  80. }
  81. public void min(String str1) {
  82. int size = this.emp.length;
  83. int sum=0;
  84. int min =10000;
  85. if(str1.equals("age")) {
  86. for(int i=0;i<size;i++) {
  87. if(min>this.emp[i].age) {
  88. min=this.emp[i].age;
  89. }
  90. }
  91. System.out.println("年龄最小为:" + min);
  92. }else if(str1.equals("salary")) {
  93. for(int i=0;i<size;i++) {
  94. if(min>this.emp[i].salary) {
  95. min=this.emp[i].salary;
  96. }
  97. }
  98. System.out.println("薪水最小为:" + min);
  99. }else {
  100. System.out.println("输入错误");
  101. }
  102. }
  103. }

3. 实验结果

三、 实验环境

  1. 操作系统:WINDOWS 10
  2. 开发工具:VC++ 2013
  3. 实验设备:PC
    博客更新至专栏【课程设计实验报告】:https://blog.csdn.net/weixin_43598687/category_11640051.html

相关文章

最新文章

更多