How to center a string using String.format?

后端 未结 9 1588
陌清茗
陌清茗 2020-11-30 12:28
public class Divers {
  public static void main(String args[]){

     String format = \"|%1$-10s|%2$-10s|%3$-20s|\\n\";
     System.out.format(format, \"FirstName\",         


        
9条回答
  •  自闭症患者
    2020-11-30 13:07

    public static String center(String text, int len){
        String out = String.format("%"+len+"s%s%"+len+"s", "",text,"");
        float mid = (out.length()/2);
        float start = mid - (len/2);
        float end = start + len; 
        return out.substring((int)start, (int)end);
    }
    
    public static void main(String[] args) throws Exception{
        // Test
        String s = "abcdefghijklmnopqrstuvwxyz";
        for (int i = 1; i < 200;i++){
            for (int j = 1; j < s.length();j++){
                //center(s.substring(0, j),i);
                System.out.println(center(s.substring(0, j),i));
            }
        }
    }
    

提交回复
热议问题