问题遇到的现象和发生背景
对齐输出
问题相关代码,请勿粘贴截图
import java.util.*;
public class 对齐输出 {
public static void main(String[] args) {
/**/
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
String[] ss = s.split(" ");//以空格分开
for (int i = 0; i < 3; i++) {
String str = ss[i];
if (str.length() < 8) {
int x=str.length();
for (int j = 0; j <=8 - str.length(); j++) {
str = " " + str;
}
}
System.out.print(str+" ");
}
System.out.println(" ");
}
}
运行结果及报错内容
结果一直是错的,但是这里有正确的代码,一直想不懂为什么这么做
正确代码:
Scanner sc = new Scanner(System.in);
String next = sc.nextLine();
String[] split = next.split(" ");
for (int i = 0; i < 3; i++) {
String str = split[i];
if (str.length() < 8) {
String str1 = str;
for (int j = 0; j < 8 - str.length(); j++) {
str1 = " " + str1;
}
str = str1;
}
System.out.print(str + " ");
}