java控制台打印表格_Java Console/控制台 打印表格

该博客介绍了一个Java类`TextTable`,用于在控制台动态打印表格,支持字段长度自适应、对齐方式(左对齐、右对齐、居中)以及设置最大列长和列间隔符。提供了初始化方法、获取表格字符串的方法以及其他辅助方法,如计算字符串长度、调整列值对齐等。示例代码展示了如何使用`TextTable`类创建和打印表格。
摘要由CSDN通过智能技术生成

功能:控制台打印表格,支持字段动态长度,左对齐,右对齐,居中,设置最大列长,设置列间隔符,设置最多打印多少行。

类下载地址:http://download..net/download/j506825719/10211082

简单使用方法:在new的时候,给定列名,和列值List,之后调用printTable就得到了表格字符串。

进阶使用方法:查看所有public方法,就能知道还有什么功能了。

效果图如下:

bc816fab87de1673b02bca9daa0d476b.png

接口如下:

package com.benjamin.debug.extendclass;

import java.awt.Font;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

/**

*

* @author Benjamin su

* QQ:506825719

* Email:jiang506825719@qq.com

*

*/

public class TextTable {

//这个变量只是用来获取字符串的标准长度,修改无意义

private static Font font = new Font("宋体", Font.PLAIN, 16);

private String columnInterval="|";//列之间的间隔符号

private AlignType at=AlignType.Left;

private Integer MaxValueLenth=40;

private Map maxFieldValueLengthMap=null;

List columnNameList=null;

List> columnValueList=null;

private boolean isException=false;

private Integer pringtTableRow=30;

/**

* 初始化时不给定列长度Map

* @param columnNameListTmp

* @param columnValueListTmp

*/

public TextTable(List columnNameListTmp,List> columnValueListTmp){

}

/**

* 初始化时给定列长度Map

* @param columnNameListTmp

* @param columnValueListTmp

* @param maxFieldValueLengthMapTmp

*/

public TextTable(List columnNameListTmp,List> columnValueListTmp,Map maxFieldValueLengthMapTmp){

}

/**

* 获得处理后的表格字符串

* @return

*/

public String printTable(){

}

/**

* 获取一个字符串的标准长度是多少

* A2*. 这样是四个标准长度

* 系统系统 这样是8个标准长度

* @param str

* @return

*/

public static Integer getStrPixelsLenth(String str){

}

/**

* 让列值居中

* @param columnValue

* @param ColumnPixelsLenth

* @return

*/

private String makeValueCenter(String columnValue,Integer repaireStrLength){

}

/**

* 让列值左对齐

* @param columnValue

* @param ColumnPixelsLenth

* @return

*/

private String makeValueLeft(String columnValue,Integer repaireStrLength){

}

/**

* 让列值右对齐

* @param columnValue

* @param ColumnPixelsLenth

* @return

*/

private String makeValueRight(String columnValue,Integer repaireStrLength){

}

/**

* 获取用于填充的字符串

* @param str

* @param PixelsLenth

* @return

*/

private static String getRepairStr(char str,Integer PixelsLenth){

}

/**

* 根据像素长度来切割字符串

* @param str

* @param PixelsLenth

* @return

*/

private static String subStrByPixels(String str,Integer PixelsLenth){

}

/**

* 让列值对齐(左对齐OR居中OR右对齐)

* @param columnValue

* @param ColumnPixelsLenth

* @return

*/

private String makeValueAlign(String columnValue,Integer ColumnPixelsLenth){

}

/**

* 设置列与列之间用什么间隔,默认是|

* @param columnInterval

*/

public void setColumnInterval(String columnInterval) {

}

/**

* 设置列值最大长度,超过则用省略号代替

* @param maxValueLenth

*/

public void setMaxValueLenth(Integer maxValueLenth) {

}

/**

* 如果不指定列长度Map,这里将自动计算

* @param columnNameListTmp

* @param columnValueListTmp

* @param maxFieldValueLengthMapTmp

*/

private void setMaxFieldValueLengthMap(List columnNameListTmp,List> columnValueListTmp,Map maxFieldValueLengthMapTmp) {

}

/**

* 设置最多打印多少行

* @param pringtTableRow

*/

public void setPringtTableRow(Integer pringtTableRow) {

}

/**

* 设置对齐方式

* @param at

*/

public void setAt(AlignType at) {

}

public enum AlignType {

Left,

Center,

Rigth

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值