方法一:
String.format("%0" + n + "d", 0).replace("0",s);
方法二:
new String(new char[n]).replace("\0", s);
方法三:(JAVA 8)
String.join("", Collections.nCopies(n, s));
方法四:
1 public static String repeatString(String str, int n, String seg) { 2 StringBuffer sb = new StringBuffer(); 3 for (int i = 0; i < n; i++) { 4 sb.append(str).append(seg); 5 } 6 return sb.substring(0, sb.length() - seg.length()); 7 }
执行次数1000_000
耗时毫秒
1797
593
167
142
根据前面的总结和测试,相对而言,3和4的耗时比较少,多次测试的结果4都比3用时更少一点。
注重性能就选择3或4
|--根据以上方法写一个给出n,输出n位数最小值方法
1 //输入1,输出1; 输入2,输出10; 输入3,输出100; 输入4,输出1000; 2 public static String convert(int n) { 3 String temp = "0"; 4 String result = "1" + String.join("", Collections.nCopies(n - 1, temp)); 5 return result; 6 }给一个数字n,输出n位数最小值的方法,比如给一个3,输出3位数的最小值1000