有人可以看看我的Java代码吗?

时间:2013-04-03 04:49:35

标签: java

因此,赋值是编写一个java program,使用if语句声明50 elements类型为double的数组alpha。初始化数组,使第一个25元素等于到索引变量的平方,最后25个元素等于索引变量的三倍。

这是我的代码:

   int i=0;      
    int count=0;
    double[] alpha= new double [50];

    for (i=0; i<alpha.length; i++)
    { 
    if (alpha.length<25)
    alpha[i]= i*i;

    System.out.print(alpha[i] + " ");

    if (alpha.length>=25)
    alpha[i]= 3*i;      

     System.out.print(alpha[i] + " ");
        count++;
        if (count==10){
        System.out.println("\n");
        count=0;

问题是我可以让代码的最后一部分工作

 if (alpha.length>=25) alpha[i]= 3*i

但代码的第一部分并不起作用。我得到了答案:

0.0 0.0 0.0 3.0 0.0 6.0 0.0 9.0 0.0 12.0 0.0 15.0 0.0 18.0 0.0 21.0 0.0 24.0 0.0 27.0 0.0 30.0 0.0 33.0 0.0 36.0 0.0 39.0 0.0 42.0 0.0 45.0 0.0 48.0 0.0 51.0 0.0 54.0 0.0 57.0 0.0 60.0 0.0 63.0 0.0 66.0 0.0 69.0 0.0 72.0 0.0.

任何人都可以看到有什么问题吗?

4 个答案:

答案 0 :(得分:2)

alpha.length将始终大于25.您需要比较i以查看它是否小于或大于25.

答案 1 :(得分:1)

在FOR迭代中,Alpha长度没有变化。你必须比较变量! for(i = 0; i

System.out.print(alpha[i] + " ");

if (i>=25)
alpha[i]= 3*i;      

 System.out.print(alpha[i] + " ");
    count++;
    if (count==10){
    System.out.println("\n");
    count=0;

答案 2 :(得分:1)

这是因为alpha.length>=25总是 TRUE 而且alpha.length < 25总是 FALSE ,因为alpha.length是50。

尝试使用 index i 进行比较。

if (i < 25)
 alpha[i] = i * i;
....
....
if (i >= 25)
 alpha[i] = 3 * i;

答案 3 :(得分:0)

alpha.length是数组的长度,总是等于50。

改变您的状况

if (alpha.length<25)

if (i<25)

同样改变

  

if(alpha.length&gt; = 25)

  

if(i> = 25)