17370845950

Java制作工资发放明细程序_数组与循环的典型应用
首先定义员工姓名、基本工资和奖金的平行数组,再通过for循环遍历计算实发工资并格式化输出每位员工的工资明细表。

在Java编程中,处理工资发放明细是一个非常典型的数组与循环结合使用的场景。通过定义员工信息和工资数据,利用数组存储,再通过循环遍历输出,可以高效地完成批量数据的处理。下面通过一个简单实用的例子,展示如何用Java编写工资发放明细程序。

1. 明确需求与数据结构

假设我们有5名员工,需要打印每个人的姓名、基本工资、奖金和实发工资。我们可以使用多个平行数组来保存这些信息:

  • names[]:存储员工姓名(String类型)
  • baseSalaries[]:存储基本工资(double类型)
  • bonuses[]:存储奖金金额

实发工资 = 基本工资 + 奖金。程序最终输出每位员工的工资明细表。

2. 编写Java代码实现

以下是完整的Java程序示例:

public class SalarySheet {
    public static void main(String[] args) {
        // 定义员工数据(平行数组)
        String[] names = {"张三", "李四", "王五", "赵六", "钱七"};
        double[] baseSalaries = {8000, 7500, 9000, 6000, 8500};
        double[] bonuses = {1200, 1000, 1500, 800, 1300};

        // 输出表头
        System.out.println("=".repeat(40));
        System.out.printf("%-6s %8s %6s %8s%n", "姓名", "基本工资", "奖金", "实发工资");
        System.out.println("=".repeat(40));

        // 使用for循环遍历数组,计算并输出每位员工的工资明细
        for (int i = 0; i < names.length; i++) {
            double total = baseSalaries[i] + bonuses[i];
            System.out.printf("%-6s %8.2f %6.2f %8.2f%n", 
                names[i], baseSalaries[i], bonuses[i], total);
        }
        System.out.println("=".repeat(40));
    }
}

3. 程序运行结果

执行上述代码后,控制台将输出如下内容:

========================================
姓名     基本工资   奖金     实发工资
========================================
张三       8000.00 1200.00  9200.00
李四       7500.00 1000.00  8500.00
王五       9000.00 1500.00 10500.00
赵六       6000.00  800.00  6800.00
钱七       8500.00 1300.00  9800.00
========================================

4. 关键知识点说明

这个程序体现了数组与循环的典型应用:

  • 使用平行数组管理相关联的不同类型数据,通过相同下标访问对应员工的信息
  • for循环自动遍历所有员工,避免重复代码
  • printf格式化输出保证表格对齐,提升可读性
  • 字符串重复("=".repeat(40))用于绘制分隔线,增强视觉效果

基本上就这些。这种结构清晰、逻辑简单的程序非常适合初学者理解数组和循环的实际用途。随着技能提升,可以将其升级为使用对象数组(如Employee类)来进一步优化结构。