用java或前端,实现该打印
时间: 2024-03-27 09:41:04 浏览: 11
好的,以下提供Java和前端两个实现方案。
### Java实现
Java中可以使用System.out.printf()函数来输出格式化的数据。下面是一个示例代码,可以实现类似Python的表格打印功能。
```java
import java.util.Arrays;
public class TablePrinter {
public static void printTable(String[][] data, String[] headers, int[] widths) {
// 输出表头
for (int i = 0; i < headers.length; i++) {
System.out.printf("%-" + widths[i] + "s ", headers[i]);
}
System.out.println();
// 输出分隔线
for (int i = 0; i < Arrays.stream(widths).sum() + widths.length - 1; i++) {
System.out.print("-");
}
System.out.println();
// 输出数据
for (String[] row : data) {
for (int i = 0; i < headers.length; i++) {
System.out.printf("%-" + widths[i] + "s ", row[i]);
}
System.out.println();
}
}
public static void main(String[] args) {
String[][] data = {
{"Alice", "20", "Female"},
{"Bob", "25", "Male"},
{"Charlie", "30", "Male"},
{"David", "35", "Male"},
{"Eve", "40", "Female"},
};
String[] headers = {"Name", "Age", "Gender"};
int[] widths = {10, 5, 8};
printTable(data, headers, widths);
}
}
```
输出结果:
```
Name Age Gender
-----------------------
Alice 20 Female
Bob 25 Male
Charlie 30 Male
David 35 Male
Eve 40 Female
```
### 前端实现
前端可以使用HTML和CSS来实现表格打印。以下是一个示例代码,可以实现类似Python的表格打印功能。
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Table Printer</title>
<style>
table {
border-collapse: collapse;
width: 100%;
}
th, td {
border: 1px solid black;
padding: 8px;
text-align: left;
}
th {
font-weight: bold;
}
</style>
</head>
<body>
<table>
<tr>
<th>Name</th>
<th>Age</th>
<th>Gender</th>
</tr>
<tr>
<td>Alice</td>
<td>20</td>
<td>Female</td>
</tr>
<tr>
<td>Bob</td>
<td>25</td>
<td>Male</td>
</tr>
<tr>
<td>Charlie</td>
<td>30</td>
<td>Male</td>
</tr>
<tr>
<td>David</td>
<td>35</td>
<td>Male</td>
</tr>
<tr>
<td>Eve</td>
<td>40</td>
<td>Female</td>
</tr>
</table>
</body>
</html>
```
如果需要动态生成表格,可以使用JavaScript来实现。以下是一个示例代码,可以动态生成表格并设置样式。
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Table Printer</title>
<style>
table {
border-collapse: collapse;
width: 100%;
}
th, td {
border: 1px solid black;
padding: 8px;
text-align: left;
}
th {
font-weight: bold;
}
</style>
</head>
<body>
<button onclick="printTable()">Print Table</button>
<table id="myTable"></table>
<script>
function printTable() {
let data = [
["Alice", "20", "Female"],
["Bob", "25", "Male"],
["Charlie", "30", "Male"],
["David", "35", "Male"],
["Eve", "40", "Female"],
];
let headers = ["Name", "Age", "Gender"];
let table = document.getElementById("myTable");
// 添加表头
let headerRow = document.createElement("tr");
for (let header of headers) {
let th = document.createElement("th");
th.innerText = header;
headerRow.appendChild(th);
}
table.appendChild(headerRow);
// 添加数据
for (let row of data) {
let dataRow = document.createElement("tr");
for (let item of row) {
let td = document.createElement("td");
td.innerText = item;
dataRow.appendChild(td);
}
table.appendChild(dataRow);
}
}
</script>
</body>
</html>
```
点击按钮后,会动态生成表格并显示在页面中。