本文共 1480 字,大约阅读时间需要 4 分钟。
实现leftpad函数。函数包含两个重载:三个参数的版本中,如果原字符串长度大于给定的size或者为空,则返回其本身,否则将其左边填满给定的字符使得其长度达到给定的size;两个参数的版本中,视第三参数为空字符。代码如下:
public class StringUtils { /** * @param originalStr: the string we want to append to with spaces * @param size: the target length of the string * @return: A string */ static public String leftPad(String originalStr, int size) { // Write your code here if (originalStr == null || originalStr.isEmpty() || originalStr.length() >= size) { return originalStr; } StringBuilder sb = new StringBuilder(); for (int i = 0; i < size - originalStr.length(); i++) { sb.append(' '); } return sb.append(originalStr).toString(); } /* * @param originalStr: the string we want to append to * @param size: the target length of the string * @param padChar: the character to pad to the left side of the string * @return: A string */ static public String leftPad(String originalStr, int size, char padChar) { // write your code here if (originalStr == null || originalStr.isEmpty() || originalStr.length() >= size) { return originalStr; } StringBuilder sb = new StringBuilder(); for (int i = 0; i < size - originalStr.length(); i++) { sb.append(padChar); } return sb.append(originalStr).toString(); }}
时空复杂度 O ( s i z e ) O(size) O(size)。
转载地址:http://fqds.baihongyu.com/