如何在2d数组中找到匹配的值

时间:2016-06-30 14:07:00

标签: java arrays char

我有一个char变量。我想在2D char数组中找到与我的char变量相等的元素,如果有一个元素我想获得该元素的索引号

2 个答案:

答案 0 :(得分:2)

你应该遍历2D数组。下面的代码显示了名为" myarray"的数组解决方案。和char存储在名为mychar的变量中。 mychar的坐标将显示在控制台中。

for (int i = 0; i < myarray.length; i++) {
    for (int j = 0; j < myarray[i].length; j++) {
        if (myarray[i][j] == mychar){
            System.out.println(String.valueOf(i) + " " + String.valueOf(j));
            break;
        }
    }
}

答案 1 :(得分:-1)

您可以创建一个包含两个索引的类。您的方法将返回此类的实例。

char array[][] = new char[10][10];    

class Tuple //helper class
{
    public int i,  j;
    Tuple(int i, int j)
    {
        this.i = i;
        this.j = j;
    }
}
public Tuple matches(char c) //return indices (Tuple-instance) or null if not found
{

    for(int i = 0; i < array.length; i++)
    {
        for(int j = 0; j < array[0].length; j++)
        {
            if(array[i][j] == c)
            {
                return new Tuple(i, j);
            }

        }
    }
    return null;
}