Java 如何从2D数组中的特定位置获取字符并将其存储在另一个变量中?

Java 如何从2D数组中的特定位置获取字符并将其存储在另一个变量中?,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,例如,我有一个数组 OurTreats[][] BoxOfChocolates = new OurTreats[10][10]; (OurTreats是我创建的一个类,它包含一个数字从0到7的数组) 我希望这个字符存储在chocolates[2][4]的位置框中,并将该字符存储在一个新变量int中 我试过这个 int character = BoxOfChocolates[2][4]; 但这不起作用。有人知道怎么做吗 编辑:我得到的错误是“类型不兼容,无法将OurTreats转换为int”

例如,我有一个数组

OurTreats[][] BoxOfChocolates = new OurTreats[10][10];
(OurTreats是我创建的一个类,它包含一个数字从0到7的数组)

我希望这个字符存储在chocolates[2][4]的位置框中,并将该字符存储在一个新变量int中

我试过这个

int character = BoxOfChocolates[2][4];
但这不起作用。有人知道怎么做吗

编辑:我得到的错误是“类型不兼容,无法将OurTreats转换为int”

类别代码:

import java.util.*;

public class OurTreats {

    public void OurTreats() {
        OurTreats ot = new OurTreats();
        ot.treatNumbers();
    }

    public int treatNumbers() {
        int treat[] = {0, 1, 2, 3, 4, 5, 6, 7};
        Random rand = new Random();
        int num = rand.nextInt(treat.length);
        return (treat[num]);
    }
}
那么:

int character=BoxOfChocolates[2][4]


OurTreats是类,而BoxOfChocolates是类的对象或一个实例,其中加载了数据。

OurTreats
是您创建的类,
BoxOfChocolates
是该类的二维数组对象。 所以基本上,存储在Chocolates[i][j]的
盒子中的是
OurTreats
类的一个实例

因此,根据您的类定义,我建议您尝试:

int变量=BoxOfChocolates[2][4]。数据成员

DataMember取决于您的类定义,所以我给了它一个通用名称 编辑: 看到你的类定义。您可能想做的是:

int character=BoxOfChocolates[2][4].treatNumbers();

由于您没有显式的数据成员,我认为对函数的调用将完成您需要它做的事情,尽管我建议您修改您的类定义。

这是因为您无法将所创建的类分配给
int
变量,请提供该类code@Mosius那是个错误,在我的代码中,它实际上是一盒巧克力。我会提供代码是的,对不起,那是个错误。我的实际代码有BoxOfChocolates[][],而不是我们的TREATS,所以它仍然没有work@Bela我已经根据你的班级定义对答案进行了修改,希望对你有所帮助!