【问题标题】:I want to loop over an int comparing it with an int array java我想循环一个 int 将它与一个 int 数组 java 进行比较
【发布时间】:2014-10-14 09:24:15
【问题描述】:

我想使用 do 循环将 int x 值与 int 数组 data[i][j] 进行比较。 data 得到值 1236、1238、1240 和 1250。和 x = 1237

我的循环如下所示:

boolean go = true;

do {
    if (x == data[i][j]) {
        System.out.println("" + x)
        go = false;
    } else {
        x++
    }

} 
while (go)

【问题讨论】:

  • 您的问题是什么?为什么将 'x' 与 'go' 作为循环条件进行比较?
  • x 是整数,go 是布尔值。编译器错误。
  • 你知道你会增加 x 直到它等于data[i][j] 然后打印它。打印data[i][j]不是更简单吗?
  • 我正在处理的程序选择一个理想值,然后将其与存储在数组中的现有值进行比较。我只希望在循环完成后打印值 1238
  • @Jesper 如果是这样,只需添加 System.out.println(1238) 并删除循环。

标签: java arrays compare


【解决方案1】:

x 是 int,go 是布尔值。编译器错误。试试这个。

  do{
       if(x==data[i][j]){
       System.outln(""+x)
       go = false;
    }
    else{x++}
    }

    while(go == true);

【讨论】:

  • 去==真!只需使用 go
  • 这是为了他的理解。看来他是java新手。
【解决方案2】:

我不确定最初的提问者是否真的想这样做:

for(int i=0;i<100;i++) {
    for(int j=0;j<100;j++) {
        if(x == data[i][j]) {
            System.out.println("found " + x + " at " + i + " " + j);
            break;
        }
    }
}

就像在数据中找到 x 的位置一样。

【讨论】:

  • 不是真的,但它接近我想要的。我想将“x”的计算值与 arrya 的现有值进行比较,如果它们不匹配 x 将执行 x=x+1;然后它再次通过循环并与数组进行比较,直到值匹配。然后它会破裂。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-10
  • 2018-05-29
  • 2015-10-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多