超实用 2 ArrayList链表之 员工工资管理系统

  1 package ArrayList的小程序;
  2 import java.io.*;
  3 import java.util.*;
  4 public class kkk {
  5
  6     /**
  7      * 作者:Mr.fan
  8      * 功能:展示一个小的ArrayList链表的 员工工资记录系统
  9      */
 10     public static void main(String[] args)throws Exception
 11     {
 12         //创建EmpManage对象
 13         EmpManage em=new EmpManage();
 14         BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
 15         //作出一个简易菜单
 16         while(true)
 17         {
 18             System.out.println("请选择你要进行的操作");
 19             System.out.println("1:表示添加一个雇员");
 20             System.out.println("2:查找一个雇员");
 21             System.out.println("3:修改一个雇员的工资");
 22             System.out.println("4:删除一个雇员");
 23             System.out.println("5:退出系统");
 24             System.out.println("6:显示出所有员工的信息");
 25
 26             String operType=br.readLine();
 27
 28             if(operType.equals("1"))
 29             {
 30                 System.out.println("请输入编号:");
 31                 String empNo=br.readLine();
 32                 System.out.println("请输入名字:");
 33                 String name=br.readLine();
 34                 System.out.println("请输入工资:");
 35                 float sal=Float.parseFloat(br.readLine());//再次看到这个 还是觉得叼叼的 很方便
 36
 37                 Emp emp=new Emp(empNo,name,sal);
 38
 39                 em.addEmp(emp);
 40             }
 41             else if(operType.equals("2"))
 42             {
 43                 System.out.println("请输入编号:");
 44                 String empNo=br.readLine();
 45
 46                 em.showInfo(empNo);
 47             }
 48             else if(operType.equals("3"))
 49             {
 50                 System.out.println("请输入要修改工资的员工编号:");
 51                 String gaiNO=br.readLine();
 52                 System.out.println("请输入修改后工资:");
 53                 float gaiSAL=Float.parseFloat(br.readLine());
 54                 em.updateSal(gaiNO,gaiSAL);
 55             }
 56             else if(operType.equals("4"))
 57             {
 58                 System.out.println("请输入要删除员工的编号:");
 59                 String NOdel=br.readLine();
 60                 em.delEmp(NOdel);
 61             }
 62             else if(operType.equals("5"))
 63             {
 64                 //退出系统
 65                 System.exit(0);
 66             }
 67             else if(operType.equals("6"))
 68             {
 69                 ArrayList nx=em.getal();
 70                 for(int i=0;i<nx.size();i++)
 71                 {
 72                     //取出Emp对象
 73                     Emp emp=(Emp)nx.get(i);
 74
 75                     System.out.print("编号="+emp.getEmpNo());
 76                     System.out.print("  名字="+emp.getName());
 77                     System.out.print("  工资="+emp.getSal());
 78                     System.out.println("\n");
 79
 80                 }
 81             }
 82         }
 83     }
 84
 85 }
 86 //采用面向对象 封装思想 来建造一个雇员管理类
 87 class EmpManage
 88 {
 89 /*封装思想都会采用 保护 */    private ArrayList al=null;
 90     public EmpManage()//构造
 91     {
 92         al=new ArrayList();
 93     }
 94     //加入员工
 95     public void addEmp(Emp emp)
 96     {
 97         al.add(emp);
 98     }
 99     //显示员工的相关信息
100     public void showInfo(String empNo)
101     {
102         //遍历整个ArrayList
103         for(int i=0;i<al.size();i++)
104         {
105             //取出Emp对象
106             Emp emp=(Emp)al.get(i);
107             //比较编号
108             if(emp.getEmpNo().equals(empNo))
109             {
110                 System.out.println("找到该员工,他的信息是:");
111                 System.out.println("编号="+empNo);
112                 System.out.println("名字="+emp.getName());
113                 System.out.println("工资="+emp.getSal());
114             }
115         }
116     }
117     public void updateSal(String empNo,float newSal)
118     {
119         for(int i=0;i<al.size();i++)
120         {
121             Emp emp=(Emp)al.get(i);
122             if(emp.getEmpNo().equals(empNo))
123             {
124                 //修改薪水
125                 emp.setSal(newSal);
126             }
127         }
128     }
129     public void delEmp(String empNo)
130     {
131         for(int i=0;i<al.size();i++)
132         {
133             Emp emp=(Emp)al.get(i);
134             if(emp.getEmpNo().equals(empNo))
135             {
136                 al.remove(i);
137             }
138         }
139     }
140     public ArrayList getal()
141     {
142         return al;
143     }
144 }
145 class Emp
146 {
147
148     private String empNo;
149     private String name;
150     private float sal;
151     public Emp(String empNo,String name,float sal)
152     {
153         this.empNo=empNo;
154         this.name=name;
155         this.sal=sal;
156     }
157     public String getEmpNo() {
158         return empNo;
159     }
160     public void setEmpNo(String empNo) {
161         this.empNo = empNo;
162     }
163     public String getName() {
164         return name;
165     }
166     public void setName(String name) {
167         this.name = name;
168     }
169     public float getSal() {
170         return sal;
171     }
172     public void setSal(float sal) {
173         this.sal = sal;
174     }
175 }
时间: 2024-10-06 10:39:14

超实用 2 ArrayList链表之 员工工资管理系统的相关文章

企业员工工资管理系统

企业工资管理是人力资源管理的一个核心环节,在市场经济和全球一体化的大背景下,随着人力资源管理在战略层面上发挥着越来越重要的作用,传统的薪酬制度已于现代化的要求不匹配,并越来越限制着企业的发展.本系统以员工的考勤信息作为基础,因为本系统是使用员工考勤信息来计算员工的工资.系统结合实际的人事.财务制度,通过实际的需求分析,采用功能强大的VS2008作为开发工具.SQL作为数据库开发出来的企业工资管理系统.使用的技术有:数据库的访问,菜单控制.本文分析了企业工资管理系统的应用现状,阐述了本工资管理系统

超实用 1 ArrayList 链表

1 package ArrayList链表; 2 import java.util.*; 3 public class kk1 { 4 5 /** 6 * 作者:Mr.Fan 7 * 功能:记住ArrayList链表 8 */ 9 public static void main(String[] args) { 10 // TODO Auto-generated method stub 11 ArrayList al=new ArrayList(); 12 System.out.println(

C#桌面办公应用-工资管理系统系列九

今天介绍介绍一下我自主开发的工资管理系统中的"汇总查询打印"模块,改小模块具有以下的功能:可以汇总统计员工的工资发放明细信息,可以查询指定的某个部门下的某些员工的工资发放明细信息,并打印成报表!开发的流程为:建立一个用于汇总的数据库表.制作报表.汇总.查询打印!我自己觉得这个功能是相当有趣的,而且在实际的企业中也具有一定的适用性,可以根据企业的需要自主定制相应的报表!若有博友想获取该系统的源码,或者想作为自己的毕业设计的系统实现,可以加我QQ:1974544863进行交流! 下面以&q

职工工资管理系统 --C语言

#include<stdio.h> #include<string.h> #include<stdlib.h> #define NUM 1000 void enter(); void search_num(); void dele_num(); void modi_num(); void browse(); void count(); void load(); void add(); void menu(); int n; //员工的总数 struct emploee

单位员工通讯录管理系统(线性表的应用)

[问题描述] 为某个单位建立一个员工通讯录管理系统,可以方便查询每一个员工的办公室电话.手机号.及电子邮箱.其功能包括通讯录链表的建立.员工通讯信息的查询.修改.插入与删除.以及整个通讯录表的输出. [实现提示] 可以采用单链表的存储结构,如可定义如下的存储结构: typedef struct {  /*员工通讯信息的结构类型定义*/ char num[5];       /*员工编号*/ char name[10];      /*员工姓名*/ char phone[15];     /*办公

员工信息管理系统需求分析

员工信息管理系统"可以是面向企业或事业单位的科学.全面.高效进行人事管理的系统,可以根据企业或事业单位人事管理的实际情况,进行科学的.具体的.实用性的系统设计.内容包括机构的建立和维护,人员信息的录入和输出,各种实用信息的浏览,个人信息相关信息的添加,工资的调整和发放以及各类报表的绘制和输出等功能.系统简便灵活实用或者自动化功能较强均可. 系统设计分析 用于小型企业,其功能主要分为: 用户管理:用于对用户的添加,删除,修改. 帮助信息:用于对本系统的具体操作进行详解. 本系统性能力求易于使用,具

C#桌面办公应用-工资管理系统系列七

接前文工资管理系统系列六,本文将介绍C# winform应用程序中的查询模块功能.其中,就包括了综合.模糊查询以及分页查询:值得说明的是,综合查询,其实就是多个条件组合起来的组合查询啦,只不过我换了个不严谨的称呼罢了!组合多个条件并采用模糊查询的方法实现查询功能:而对于分页查询,我想,参与过企业的项目或者是一些实用的项目的博友而言,都不会陌生,就像我一样,我是搞java开发的,公司用的数据库是mysql,所以对于项目中前端页面使用的分页查询我是再熟悉不过了,这个等改天有空我也写篇博文介绍介绍我们

简单的工资管理系统小程序,只是练手

需求如下: 工资管理系统aaa 100000bbb 80000ccc 50000ddd 30000-----以上是info.txt文件-----实现效果:从info.txt文件中读取员工及其工资信息,最后将修改或增加的员工工资信息也写入原info.txt文件.效果演示:1. 查询员工工资2. 修改员工工资3. 增加新员工记录4. 退出 1 #!/usr/bin/env python 2 #-*- coding:utf-8 -*- 3 # @Time : 2017/9/21 15:19 4 # @

走进C++程序世界---------雇员工资管理系统

前面对C++ 面向对象的基本了解和认识,下面来运用前面的基础知识,来实现一个简单的雇员工资管理系统,雇员分为2中,普通员工和管理者,两者工资和工作年限挂钩.具体参见下图: 具体实现参见下面的代码: /*File : salarySystem.h *Auth : sjin *Date : 2014-04-27 *Mail : [email protected] */ #ifndef __SALARYSYSTEM_H #define __SALARYSYSTEM_H #include <string