Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java控制台中对齐文本?_Java_Leftalign - Fatal编程技术网

如何在java控制台中对齐文本?

如何在java控制台中对齐文本?,java,leftalign,Java,Leftalign,如何在JavaEclipse控制台中左对齐文本。例如,行必须是50个字符,并且单词不应分割。我试过上面的代码,但我认为它不起作用。我该怎么做 public void Left(String str){ if(str.length()>50){ int cursor = 0; int k = 0; for (int i = 0; i < str.length(); i++,cursor++) { if(c

如何在JavaEclipse控制台中左对齐文本。例如,行必须是50个字符,并且单词不应分割。我试过上面的代码,但我认为它不起作用。我该怎么做

public void Left(String str){

    if(str.length()>50){
        int cursor = 0;
        int k = 0;
        for (int i = 0; i < str.length(); i++,cursor++) {
            if(cursor%50 == 0){
                //if(str.charAt(cursor)!=' ')
                    for (int index = i; index > 0; index--) {
                        if(str.charAt(index) == 32){
                            String left = str.substring(0, index);
                            String right = str.substring(index+1, str.length());
                            str = left+"\n"+right;
                            int lineLength = str.split("\n")[k].length();
                            int d = 50-lineLength;
                                while(d-- != 0){
                                    String left2 = str.substring(k*50, (k*50)+lineLength);
                                    String right2 = str.substring(lineLength++, str.length());
                                    str = left2+" "+right2;

                                }
                                k++;
                            break;
                        }
                    }
            }
        }


    }
    System.out.println(str);
}
publicsvoid左(stringstr){
如果(str.length()>50){
int游标=0;
int k=0;
对于(int i=0;i0;index--){
如果(字符串(索引)==32){
String left=str.substring(0,索引);
String right=str.substring(索引+1,str.length());
str=左+“\n”+右;
int lineLength=str.split(“\n”)[k].length();
int d=50线长;
而(d-!=0){
字符串left2=str.substring(k*50,(k*50)+线宽);
String right2=str.substring(lineLength++,str.length());
str=left2+“”+right2;
}
k++;
打破
}
}
}
}
}
系统输出打印项次(str);
}

最简单的方法是在空格上拆分,然后在数组中循环,每当下一个单词的行长过宽时,打印每个单词,后跟空格或换行符。注意长度超过行限制的单词,并将它们打印在自己的行上