我需要一个由大小为5x4的*
组成的矩形。
我需要为此代码提供实现
String[] number1 =model1(5,4);
print(model1);
这是我的尝试:
public class mm {
public static void main(String args[]) {
String[] number1 = model1(5, 4);
print(model1);
}
private static String[] model1(int i, int j) {
// TODO Auto-generated method stub
int width=i;
int height=j;
for ( int row = 0 ; row < height ; row++ )
{
for ( int col = 0 ; col < width ; col++ )
{
System.out.print("*")
}
System.out.print(" ")
}
String[] a = a.new().amodel1(i,j);
return a ;
}
public static void print(String[] n) {
System.out.println(n);
}
public static void print(String s) {
System.out.println(s);
}
}
答案 0 :(得分:1)
你的方法很好但是如果你需要一维阵列,那么你的方法就不会做你想要的。
您忘记将元素添加到数组中,然后将该数组传递给print
方法,请查看此代码:
这会将*
字符添加到数组中,如果它在宽度端,则会添加换行符(\n
),然后只需打印数组
public class StarsRectangleExample {
public static String[] drawStars(int width, int height) {
String[] array = new String[height * width];
for (int i = 0; i < array.length; i++) {
array[i] = "*";
if ((i + 1) % width == 0) {
array[i] += "\n";
}
}
return array;
}
public static void print(String[] stars) {
for (int i = 0; i < stars.length; i++) {
System.out.print(stars[i]);
}
}
public static void main(String[] args) {
String[] stars = drawStars(5, 4);
print(stars);
}
}