gpt4 book ai didi

java - 如何使用二维数组修复 Java 代码中的 "incompatible types"错误?

转载 作者:行者123 更新时间:2023-11-29 03:28:15 25 4
gpt4 key购买 nike

我在下面的 for 循环中收到一个编译错误,提示“类型不兼容”。我的数组是 int 类型的二维数组,每个元素“i”也被声明为 int,所以我真的不明白为什么会出现此错误。

import java.util.ArrayList;

public class Square
{
ArrayList <Integer> numbers;
int[][] squares;
private int row;
private int col;

public Square()
{
numbers = new ArrayList <Integer>();
squares = new int[row][col];
}

public void add(int i)
{
numbers.add(i);
}

public boolean isSquare()
{
double squareSize = Math.sqrt(numbers.size());
if(squareSize % 1 == 0)
{
return true;
}
else if(squareSize % 1 != 0)
{
return false;
}
}

public boolean isUnique()
{
for(int i: squares)//THIS IS WHERE I AM GETTING AN COMPILE ERROR
{
int occurences = Collections.frequency(squares, i);
if(occurrences > 1)
{
return false;
}
else
{
return true;
}
}
}

最佳答案

因为 squares 是一个 int[][]squares 的元素是 int[] 类型>,不是 int

要从这样的二维数组中提取元素,您需要两个嵌套的 for 循环:

for (int[] row : squares)
{
for (int i : row)
{
// Process the value here.
}
}

关于java - 如何使用二维数组修复 Java 代码中的 "incompatible types"错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19849922/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com