java实现员工工资管理系统

 更新时间:2022年02月28日 11:28:01   作者:Jiryane  
这篇文章主要为大家详细介绍了java实现员工工资管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了java实现员工工资管理系统的具体代码,供大家参考,具体内容如下

一、题目要求

设计员工工资管理系统,实现以下功能:

(1)输入5名员工姓名、工号、月工资;
(2)统计每人的年收入及收入最高和最低的员工,计算他们的平均工资;
(3)按月工资高低降序排序;
(4)统计高于平均工资和低于平均工资的员工;
(5)输入工号名称查询员工的姓名和月工资。

二、源代码

import java.util.Scanner;
import java.io.BufferedReader;
public class MyStaff{
  public static void main(String []args){
      String Name[]=new String[5];
      int Number[]=new int[5];
      int a[]=new int[5];
      for(int i=0;i<5;i++){
          Scanner sc=new Scanner(System.in);      //接收键盘输入的员工信息
          System.out.println("请输入员工"+(i+1)+"的姓名");   
          Name[i]=sc.next();                //把接收到的姓名存到数组中
          System.out.println("请输入员工"+(i+1)+"的工号");
          Number[i]=sc.nextInt();
          System.out.println("请输入员工"+(i+1)+"的工资");
          a[i]=sc.nextInt();
      }
      for(int i=0;i<5;i++){                     //循环输出五个人的信息
          System.out.println("员工的信息:姓名:"+Name[i]+"\t工号:"+Number[i]+"\t月工资:"+a[i]+"\t年工资:"+(a[i]*12));
   }
          first:{                               //标号为一的代码块
              System.out.println("欢迎使用员工工资管理系统!!!");
         second:{                            //标号为二的代码块
              While(true){
                   System.out.println("[1]##########按月工资高低降序排序#################");
                   System.out.println("[2]##########统计收入最高和最低的员工#############");
                   System.out.println("[3]##########计算他们的平均工资
###################");
                   System.out.println("[4]##########统计高于平均工资和低于平均工资的员工#");
                   System.out.println("[5]#########输入工号查询员工的姓名和月工资########");
                   Scanner t=new Scanner(System.in);
                   int input=t.nextInt();
                   if(input==1)
                     {
                      sort(a);                     //调用sort方法
                   }
                   else if(input==2)
                   {
                      Statistics(a);
                   }
                   else if(input==3)
                   {
                       count(a);
                   }
                  else if(input==4)
                   {
                      tongji(Name,a);
                   }
                  else if(input==5)
                   {
                      chaxun(Name,Number,a);
                   }   
                  else if(input>5)          //如果输入的数大于5
                   {
                  break second;             //退出二代码块
                   }
       }
     }
      System.out.println("成功退出系统!!!");
     }
   }
//按月工资高低降序排序
public static void sort(int z[]){
  for(int i=0;i<5-1;i++)              //控制比较几次
      for(int j=0;j<5-1-i;j++)        //控制逐一比较
        if(z[j]<z[j+1]){              // 如果前面的小于后面的互换位置
         int p;
         p=z[j];
         z[j]=z[j+1];
         z[j+1]=p;
        }
  System.out.println("按月工资高低降序排序为:");
for(int i=0;i<5;i++){
  System.out.println(z[i]+" ");}
}
//统计收入最高和最低的员工
public static void Statistics(int z[]){
    int big=z[0];                    //规定第一个人的工资最高
    for(int i=1;i<5;i++){
    if(z[i]>big) {                   //如果后面的人的工资高于第一个人
       big=z[i]; }                   //则此人为工资最高的人
    }
    System.out.println("收入最高的员工为:"+x[i]+"\t他的工资为:"+big);
    int small=z[0];
    for(int i=1;i<5;i++){
    if(z[i]<small){
       small=z[i];}
     }
    System.out.println("收入最低的员工为:"+x[i]+"\t他的工资为:"+small); 
}
//计算他们的平均工资
public static void count(int z[]){
     int sum=0;
     for(int i=0;i<5;i++){
       sum+=z[i]; 
     }
   int average=(sum/5)*12;
   System.out.println("他们的年平均工资为:"+average);
}
//统计高于平均工资和低于平均工资的员工
public static void tongji(String x[],int z[]){
   int sum=0;
     for(int i=0;i<5;i++){
       sum+=z[i]; 
     }
  int average=sum/5;   //计算平均工资
  for(int i=0;i<5;i++){
     if(z[i]>average)
       System.out.println("高于平均工资的员工为:"+x[i]+"\t他们的工资为:"+z[i]);
     if(z[i]<average)
       System.out.println("低于平均工资的员工为:"+x[i]+"\t他们的工资为:"+z[i]);
  }
}
//输入工号查询员工的姓名和月工资
public static void chaxun(String x[],int y[],int z[]){
System.out.print("请输入所查询的工号:");
   Scanner s=new Scanner(System.in);      //从键盘接收所要查询的工号
   int xxxh=s.nextInt();                  //存到xxxh中
   for(int i=0;i<5;i++){
     if(y[i]==xxxh) {                    //如果相等,输出信息
     System.out.println("学号:"+y[i]+"\t姓名:"+x[i]+"\t工资:"+z[i]);
     }
}
}
}

三、运行结果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • SpringBoot中的Thymeleaf模板

    SpringBoot中的Thymeleaf模板

    Thymeleaf 的出现是为了取代 JSP,虽然 JSP 存在了很长时间,并在 Java Web 开发中无处不在,但是它也存在一些缺陷。在这篇文中给大家介绍了这些缺陷所存在问题,对spring boot thymeleaf 模板相关知识感兴趣的朋友跟随小编一起看看吧
    2018-10-10
  • java Semaphore共享锁实现原理解析

    java Semaphore共享锁实现原理解析

    这篇文章主要为大家介绍了Semaphore共享锁实现原理解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • Java中的interrupted()和isInterrupted()

    Java中的interrupted()和isInterrupted()

    这篇文章主要介绍了Java中的interrupted()和isInterrupted()摸下面文章围绕interrupted()和isInterrupted()的相关资料展开详细内容,需要的小伙伴乐意参考下面下面文章具体价绍,希望对大家有所帮助
    2021-11-11
  • Java String保存字符串的机制

    Java String保存字符串的机制

    Java中字符串以什么格式来存储?Java 中的 Unicode 字符串会按照 Latin1或者 UTF16 的编码格式保存在 String 中,本文就详细的介绍了一下,感兴趣的可以了解一下
    2021-05-05
  • Spring Boot2集成AOPLog来记录接口访问日志

    Spring Boot2集成AOPLog来记录接口访问日志

    这篇文章主要介绍了Spring Boot2集成AOPLog来记录接口访问日志,日志是一个Web项目中必不可少的部分,借助它我们可以做许多事情,比如问题排查、访问统计、监控告警等,需要的朋友可以参考下
    2019-06-06
  • Spring mvc Controller和RestFul原理解析

    Spring mvc Controller和RestFul原理解析

    这篇文章主要介绍了Spring mvc Controller和RestFul原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • Mybatisplus如何存储List、Map

    Mybatisplus如何存储List、Map

    这篇文章主要介绍了Mybatisplus如何存储List、Map问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • spring整合redis以及使用RedisTemplate的方法

    spring整合redis以及使用RedisTemplate的方法

    本篇文章主要介绍了spring整合redis以及使用RedisTemplate的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • java邮件发送的实现

    java邮件发送的实现

    本篇是用于java来实现邮件的发送的实例代码,基于smtp服务,有需要的可以参考一下。
    2016-10-10
  • 详解Java如何判断一个对象是否为空

    详解Java如何判断一个对象是否为空

    我们在刚开始学习Java的时候,遇到过最多的异常肯定是臭名昭著的空指针异常(NullPointerException),可以说它陪伴了我们整个初学阶段,那么如何优雅的判断一个对象是否为空并且减少空指针异常呢,
    2024-01-01

最新评论