java编写一个自动汇总的表格
以下是一个简单的Java程序,用于自动汇总数据并生成表格:
import java.util.HashMap;
import java.util.Map;
public class TableSummarizer {
public static void main(String[] args) {
// 假设有三个部门,每个部门有三个员工,他们的销售额如下:
int[][] sales = {
{5000, 6000, 7000},
{8000, 9000, 10000},
{11000, 12000, 13000}
};
// 计算每个部门的总销售额和每个员工的总销售额
int[] departmentTotals = new int[sales.length];
int[] employeeTotals = new int[sales[0].length];
for (int i = 0; i < sales.length; i++) {
int departmentTotal = 0;
for (int j = 0; j < sales[i].length; j++) {
departmentTotal += sales[i][j];
employeeTotals[j] += sales[i][j];
}
departmentTotals[i] = departmentTotal;
}
// 生成表格
Map<String, Object[]> data = new HashMap<>();
data.put("部门销售额汇总", new Object[] {"部门", "销售额"});
for (int i = 0; i < sales.length; i++) {
data.put("部门" + (i+1), new Object[] {"部门" + (i+1), departmentTotals[i]});
}
data.put("员工销售额汇总", new Object[] {"员工", "销售额"});
for (int j = 0; j < sales[0].length; j++) {
data.put("员工" + (j+1), new Object[] {"员工" + (j+1), employeeTotals[j]});
}
// 输出表格
for (String key : data.keySet()) {
Object[] row = data.get(key);
System.out.println(key + "\t" + row[0] + "\t" + row[1]);
}
}
}
此程序将生成以下输出:
部门销售额汇总 部门 销售额
部门1 部门1 18000
部门2 部门2 27000
部门3 部门3 36000
员工销售额汇总 员工 销售额
员工1 员工1 24000
员工2 员工2 27000
员工3 员工3 30000
这个程序使用了一个HashMap来保存表格的数据,其中键是表格的行号,值是该行的数据。在计算每个部门和员工的销售额总和后,程序将这些数据添加到HashMap中,并使用循环遍历该HashMap并输出表格。
原文地址: https://www.cveoy.top/t/topic/b0nG 著作权归作者所有。请勿转载和采集!