日期:2014-05-20 浏览次数:20770 次
public class C { public static void align(String str,int k,String c){ if(k-str.length() >0){ for(int i=0;i<k-str.length();i++) str=str+c; } System.out.println("左对齐:"+str); System.out.println("右对齐:"+new StringBuffer(str).reverse().toString()); } public static void main(String[] args){ //左对齐和右对齐,参数为一个字符串,和一个整数,还有一个字符。 //当字符串长度小于整数时,用字符补全。 align("abcdefg",20,"*"); } }
------解决方案--------------------
public static void main(String[] args) { String str = "hello"; System.out.println(left(str, 10, '+')); System.out.println(right(str, 10, '+')); } public static String left(String str, int len, char c) { StringBuffer sb = new StringBuffer(str); while (sb.length() < len) { sb.insert(0, c); } return sb.toString(); } public static String right(String str, int len, char c) { StringBuffer sb = new StringBuffer(str); while (sb.length() < len) { sb.append(c); } return sb.toString(); }