方阵计划

时间:2017-04-21 15:16:26

标签: java arrays netbeans

使用java,我应该创建一个程序来存储数字0,1,2和&的平方。在10个元素的ArrayList中有9个。

我创建了部分显示数字和方块的代码,但程序直接显示所有数字并且看起来不整齐。有人可以帮我把它写成像这样:

数字:0平方:0

数字:1平方:1

数字:2平方:4

代码

public static void main(String[] args) {
    int[] temp = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};

    for (int value : temp) {
        System.out.println(value);
    }

    for (int i = 0; i < temp.length; i++) {
        temp[i] = (int) Math.pow(temp[i], 2);
    }

    for (int value : temp) {
        System.out.println(value);
    }
}

4 个答案:

答案 0 :(得分:1)

你只需要一个这样的循环:

feature

<强>输出

public static void main(String[] args) {
    int[] temp = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};

    for (int i = 0; i < temp.length; i++) {
        System.out.println(temp[i] + "\t" + (int)Math.pow(temp[i], 2));
    }
}

如果您想将结果存储在0 0 1 1 2 4 3 9 4 16 5 25 6 36 7 49 8 64 9 81 中,可以使用:

ArrayList

答案 1 :(得分:0)

试试这个:

public static void main(String[] args) {
  int[] temp = {0, 1,2,3,4,5,6,7,8,9};  

  for (int value : temp) {  
         System.out.println("number : "value);  
  }  

  for (int i = 0; i < temp.length; i++) {  
    temp[i] = (int) Math.pow(temp[i], 2);  
  }  

  for (int value : temp) {  
    System.out.println(" square : " + value + "\n");
  }
}

答案 2 :(得分:0)

public static void main(String[] args) {
   int[] temp = {0, 1,2,3,4,5,6,7,8,9};  

     // here you are printing all your numbers in the array, so the output will be: 
     // 0
     // 1
     // ...
     // 9
     for (int value : temp) {
         System.out.println(value);
     }  


     // after that, you calculate and store them in the same array; so your array now look like this:
     // [0,1,4,9,...,81]
     for (int i = 0; i < temp.length; i++) {
         temp[i] = (int) Math.pow(temp[i], 2);
     }  


     // here you are printing again your array
     // 0
     // 1
     // 4
     // ...
     // 81
     for (int value : temp) {
         System.out.println(value);
     } 
 }  

为了得到你想要的结果,你必须在打印所有内容之前计算出数字...一个选项是创建另一个数组

int[] square = new int[9];

在第一个for循环中计算并将结果保存在方形数组中并打印它们,如下所示:

for (int i = 0; i < temp.length; i++) {
    square[i] = (int) Math.pow(temp[i],2);
    System.out.println("number " + temp[i] + " square: " + square[i]);
}

答案 3 :(得分:0)

假设引用ArrayList的原始问题是正确的(OP的示例只有一个数组),并假设结果应该存储在数组中(根据问题),那么以下将工作:

public static void main(String[] args)
{
  // instantiate ArrayList
  List<Double> array = new ArrayList<>();

  // load the values
  for (int i = 0; i < 10; ++i) {
    array.add(i, Math.pow(i, 2));
  }

  // output
  for (int i = 0; i < array.size(); ++i) {
    System.out.println(String.format("%2d\t%3.0f", i, array.get(i)));
  }
}

输出:

0     0
1     1
2     4
3     9
4    16
5    25
6    36
7    49
8    64
9    81