我正在尝试创建一个由用户输入的角色制作的正方形,并根据他们选择的尺寸制作。
public class Square
{
public static void main(String[] args)
{
final byte MIN_SIZE = 2,
MAX_SIZE = 20;
byte size;
char fill;
Scanner input = new Scanner(System.in);
do
{
System.out.printf("Enter the size of the square (%d-%d): ",
MIN_SIZE, MAX_SIZE);
size = (byte)input.nextLong();
} while (size > MAX_SIZE || size < MIN_SIZE);
System.out.print("Enter the fill character: ");
fill = input.next().charAt(0);
//This is where the code which outputs the square would be//
}
}
广场的外观示例如下: 如果大小为5且填充为“@”
@@@@@
@@@@@
@@@@@
@@@@@
@@@@@
答案 0 :(得分:2)
你不应该要求nextLong并将其保存在一个字节中。 size var应该很长。
要打印广场,您可以简单地找到简单的
long i,j;
for(i = 0; i < size; i++)
{
for(j = 0; j < size; j++)
System.out.print(fill);
System.out.println();
}
你可以让它表现得更好,创建一个包含带有填充字符的整行的字符串,然后打印出行数,但对于MAX_SIZE = 20,这样做。