我如何使用" for"有一个变量和不同的数字?

时间:2015-10-21 10:20:24

标签: java

我想像这样创建一个:

for(int i=-0.8;i<2;i+n){
...
}

我确实有错误:错误:不是声明。

我的错误是什么?我可以这样做吗?

感谢您的帮助。

-Regards

ChrizZly

5 个答案:

答案 0 :(得分:4)

for(int i=-0.8;i<2;i+n){

此处i+n无效。您需要将新值分配给i,因此它应该像这样

for(int i=-0.8;i<2;i=i+n){

for(int i=-0.8;i<2;i+=n){

您还需要将i的类型修改为double,因为int没有小数。

for(double i=-0.8;i<2;i+=n){

答案 1 :(得分:0)

int i=-0.8;

0.8是双倍值。不应分配给int

for(int i=0;i<2;i++)//to increment i by one

for(int i=0;i<2;i+=n)//increment i by n

您可以在java中搜索复合运算符。

如果你想使用双循环,对于停止条件你可以使用

for(double i = 0.0 ; Double.compare(i, n) > 0 ; i+=n)

Double.compare(d1, d2)   // is more precise for comparing double/float values
    如果d1在数值上等于d2 ,则
  • 返回值0 如果d1在数值上小于d2
  • ,则
  • 小于0的值 如果d1在数值上大于d2
  • ,则
  • 大于0的值

答案 2 :(得分:0)

您要为double分配int值。这是无效的。使用:

double i = -0.8

您没有在步骤部分修改计数器变量(i)。 i+n是一个数学运算,而不是赋值。使用:

i += n

条件还可以

最终for循环:

for (double i = -0.8; i < 2; i += n){
    //...
}

答案 3 :(得分:0)

第一个问题:

int i=-0.8 (Type mismatch: cannot convert from double to int)

第二个问题:

为了获得正确的声明,您必须使用您编写i+n

的作业

这是一个可能的编译代码片段

    double n=10.0;
    for(double i=-0.8; i<2.0 ;i=i+n){
        ....    
    }

答案 4 :(得分:0)

成功     int i = 0; 或double = -0.8; int i = -0.8将是错误,因为0.8不是整数。它加倍。 我希望你能得到这个。