Java输出十行

时间:2015-02-03 02:10:44

标签: java arrays output

我是初学者java课程,我对第5周的数组问题的输出语句有一个快速的问题。所以基本上我有程序的核心,但我应该将结果输出为十行。我出于某种原因即使在这里查看类似的帖子也无法让它工作。我是一名初学者,在编程时将2和2放在一起非常慢。一旦我看到它,我就有啊哈!这一刻以及整个班级的走向。我知道我必须使用模数,但在我的试验和错误中,我迷失了方向并且可能造成了更多的伤害而不是好处。帮助将不胜感激。

这就是我所拥有的,正如你所知道我正在尝试没有模数的东西:

 import java.util.*;

   public class ArrayLoop 
   {
      public static void main(String args[])
      {
         double alpha[] = new double[50];
         *//Initialize the first 25 elements of the array (int i=0; i<25; i++)//*
            for(int i = 0; i < 25; i++)
         {
            alpha[i]= i * i;
         }
            *//Initialize the last 25 elements of the array (i=25; i<50; i++)//*
               for(int i = 25; i < 50; i++)
               {
               alpha[i]= 3 * i;
               }
               *//Print the element of the array*
                  System.out.println ( "The values are: " );
                  for (int i = 0; i < 50; i++)
                  System.out.println ( alpha[i] );
               }
                  *//Print method to display the element of the array*
                  void print(double m_array[])
         {

                      for(int i = 1; i < m_array.length; i++)
                      {
                      if(i % 10 == 0){;
                      System.out.println();
                      }else{
                      System.out.print(" ");
                      }
                     }
                     if (m_array.length % 10 != 0) {
                     System.out.println();
         }
     }
 }

3 个答案:

答案 0 :(得分:0)

您的代码中有几个% 10代码段,因此我完全确定&#34; s&#34;尝试没有模数的内容&#34; : - )

话虽如此,模数正好你需要的东西,按照下面的伪代码:

count = 0
for each item in list:
    if count > 0 and (count % 10) == 0:
        print end of line
    print item
print end of line

在Java中,你会使用类似的东西:

public class Test {
    static public void main(String args[]) {
        for (int i = 0; i < 24; i++) {
            if ((i > 0) &&((i % 10) == 0)) {
                System.out.println();
            }
            System.out.print ("" + i * 3 + " ");
        }
        System.out.println();
    }
}

换句话说,在您打印项目之前,请检查它是否应该在下一行,如果是,则在打印之前输出换行符。

请注意,Java中的数组基于,因此您需要在循环中以零而不是一个索引开始。

现在你已经非常关闭了,所以你已经走上了正确的轨道但是,在我的生命中,我看不到你的print()实际打印项目的方法!这应该是您要查看的事项列表中的第一位: - )


敦促你尝试从上面的文字和样本中解决它,但是,如果你在超过半小时左右后仍然遇到麻烦,下面的代码显示了如何我做到了。

public class Test {
    static void print (double m_array[]) {
        for (int i = 0; i < m_array.length; i++) {
            if ((i > 0) && ((i % 10) == 0))
                System.out.println();
            System.out.print (m_array[i] + " ");
        }
        System.out.println();
    }

    static public void main(String args[]) {
        double[] x = new double[15];
        for (int i = 0; i < x.length; i++)
            x[i] = i * 3;
        print (x);
    }
}

答案 1 :(得分:0)

您必须首先打印该号码,然后通过检查模数决定是否打印空格或换行符:

int arr[] = new int[50];
// Initialize array here

for (int i = 0; i < arr.length; i++) {
    System.out.print(arr[i]);
    if (i > 0 && (i + 1) % 10 == 0) {
        System.out.println();
    } else {
        System.out.print(" ");
    }
}

答案 2 :(得分:0)

嗯..这至少不是滔滔不绝,但我试图对现有代码示例进行最少的更改。

public class ArrayLoop {

    public static void main(String args[]) {
        double alpha[] = new double[50];

        for (int i = 0; i < 25; i++) {
            alpha[i] = i * i;
        }

        for (int i = 25; i < 50; i++) {
            alpha[i] = 3 * i;
        }

        System.out.println("The values are: ");
        for (int i = 0; i < 50; i++) {
            System.out.print(alpha[i] + " ");
        }

        System.out.println();
        System.out.println();

        for (int i = 1; i < alpha.length; i++) {
            if (i != 1 && i % 10 == 0) {
                System.out.print(alpha[i - 1] + " ");
                System.out.println();
            } else {
                System.out.print(alpha[i - 1] + " ");
            }

        }
        System.out.print(alpha[49]);
    }
}

编辑:更好的条件是......

for (int i = 0; i < alpha.length; i++) {
    if (i > 0 && i % 10 == 9) {
        System.out.print(alpha[i] + " ");
        System.out.println();
    } else {
        System.out.print(alpha[i] + " ");
    }
}