今天就跟大家聊聊有关String.padLeft与String.padRight如何在Java中实现,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
创新互联公司是一家专注于成都网站制作、网站设计与策划设计,阿巴嘎网站建设哪家好?创新互联公司做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:阿巴嘎等地区。阿巴嘎做网站价格咨询:028-86922220
Java中String.format()中带有字符串对齐功能如下:
System.out.println(String.format("*%1$-10s*", "moon")); System.out.println(String.format("*%1$10s*", "moon"));
输出:
以上方法经过简单的变换可以得到:
public static String padWhitespaceLeft(String s, int len) { return String.format("%1$" + len + "s", s); } public static String padWhitespaceRight(String s, int len) { return String.format("%1$-" + len + "s", s); }
调用下面方法:
System.out.println("*" + padWhitespaceLeft("moon", 12) + "*"); System.out.println("*" + padWhitespaceRight("moon", 12) + "*");
可以得到结果:
以上只是介绍左右对齐时,补空白符的方法,但是在实际开发过程中,单纯的补空白符也许满足不了开发要求,为此我还要做一次强化改进:
/** * @作者 尧 * @功能 String左对齐 */ public static String padLeft(String src, int len, char ch) { int diff = len - src.length(); if (diff <= 0) { return src; } char[] charr = new char[len]; System.arraycopy(src.toCharArray(), 0, charr, 0, src.length()); for (int i = src.length(); i < len; i++) { charr[i] = ch; } return new String(charr); } /** * @作者 尧 * @功能 String右对齐 */ public static String padRight(String src, int len, char ch) { int diff = len - src.length(); if (diff <= 0) { return src; } char[] charr = new char[len]; System.arraycopy(src.toCharArray(), 0, charr, diff, src.length()); for (int i = 0; i < diff; i++) { charr[i] = ch; } return new String(charr); }
调用方法如下:
System.out.println("*" + padLeft("moon", 12, '-') + "*"); System.out.println("*" + padRight("moon", 12, '-') + "*");
输出结果:
看完上述内容,你们对String.padLeft与String.padRight如何在Java中实现有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。