我试图编写一段代码,在控制台中输入一个整数,然后显示由字母组成的更大的整数(类似于ASCII艺术)。
假设输入为112
,那么输出将会是:
# # #####
## ## # #
# # # # #
# # #####
# # #
# # #
##### ##### #######
我的代码输出结果是一样的,只是不在同一行 :(
它会将一个数字打印在另一个数字下面.. 从我的代码中可以看出原因:
import java.util.Scanner;
public class Tester {
public static void main(String[] args){
Scanner input = new Scanner(System.in);
String any = input.nextLine();
String[] sArray = any.split("");
for(int i=0; i<sArray.length; i++){
if(sArray[i].equals("1")){
System.out.println(" # ");
System.out.println(" ## ");
System.out.println("# # ");
System.out.println(" # ");
System.out.println(" # ");
System.out.println(" # ");
System.out.println("#####");
}
if(sArray[i].equals("2")){
System.out.println(" ##### ");
System.out.println("# #");
System.out.println(" #");
System.out.println(" ##### ");
System.out.println("# ");
System.out.println("# ");
System.out.println("#######");
}
}
}
}
我需要一次性打印全部内容,而不是像我的代码中使用println
一次只输出一个。也许有一种简单的方法可以解决这个问题,最好不用改变整个代码?我能想象可以用二维数组来完成,但不确定。提示也是非常受欢迎的。这不是作业。
println
插入一个新行 -print
不会。但是你需要逐行打印,即改变你的循环逻辑。 - assylias