【发布时间】:2020-03-14 09:43:01
【问题描述】:
我想打印一个大小为 n 的数组,其中每个元素是 pow(i,i),i 的范围是 1 到 n。即如果我输入 n = 4,它应该返回一个数组 A = {1, 4, 27, 256}。这是因为 power(1,1) = 1, power(2,2) = 4, power(3,3) = 27 和 power(4,4) = 256。
但是,当我尝试运行以下代码时,它没有给出任何输出。
import java.io.*;
import java.util.*;
import java.lang.Math;
public class Main
{
public static void main(String[] args)
{
Main s = new Main();
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
double[] A = new double[n];
int j ;
for(j = 0; j <= n; j++)
{
A[j] = Math.pow(j+1, j+1);
//System.out.println(A[j]); --> 1
}
System.out.print(A);
System.out.println(A); //-->2
for (int i=0; i<A.length; i++)
{
System.out.print(A[i]+" "); // --> 3
}
}
}
当我尝试删除等式 1 的注释引号时,它正在打印我的值。但是等式 2 或 3 都没有帮助我打印数组。
【问题讨论】:
-
你有一个 ArrayIndexOutOfBoundsException。将 for 循环更改为
for(j = 0; j < n; j++)。要打印结果,您可以使用System.out.println(Arrays.toString(A));
标签: java arrays output system.out