java table 打印_java 如何print table

展开全部

尾端对齐写了2种方法你可以参考 ,建议优先使用方法一.方法二还需要优化import java.util.Hashtable;

import java.util.Iterator;

import java.util.Map.Entry;

public class PrintNameDemo {

public static void main(String[] args) throws Exception {

// 普通情况,比如已知名字e5a48de588b63231313335323631343130323136353331333337616536最大不超过15个字符,

System.out.println("方法一:");

for (int i = 9; i <12; i++) {

//注意这里是printf()表示格式化输出%15s 表示15个空格  i表示填充的数据

System.out.printf("%15s", i);

//换行

System.out.println();

}

System.out.println("方法二:");

Hashtable table = new Hashtable<>();

table.put("Aaron", 12);

table.put("张三", 22);

table.put("大A", 9);

table.put("TomandJerry", 6);

Iterator> it = table.entrySet().iterator();

int maxLen = 0;

while (it.hasNext()) {

int temp = it.next().getKey().length();

if (temp > maxLen) {

maxLen = temp;//找到table里名字最长的有多少位字符

}

}

//重新获得下Iterator 因为上次迭代器it已经移到最后了.

it = table.entrySet().iterator();

while (it.hasNext()) {

Entry e = it.next();

//这里才是方法二尾端对齐的核心代码

char[] cc = new char[maxLen];

//for (int i = 0; i 

//cc[i] = '#';

//}

char[] cs = e.getKey().toCharArray();

int x = 0;

//覆盖最后的几个字符

for (int i = maxLen - cs.length; i 

cc[i] = cs[x];

x++;

}

System.out.println(new String(cc) + "\t" + e.getValue());

}

}

}

输出结果

7c4089653f18b4829e27a6d3ecb77ec6.png方法一:

9

10

11

方法二:

#########张三22

#########大A9

######Aaron12

TomandJerry6

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值