首页 > 解决方案 > 如何从 2D 数组中的特定位置获取字符并将其存储在另一个变量中?

问题描述

例如,我有数组

OurTreats[][] BoxOfChocolates = new OurTreats[10][10];

(OurTreats 是我创建的一个类,其中包含一个数字从 0 到 7 的数组)

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

我试过这个

int character = BoxOfChocolates[2][4];

但这不起作用。有谁知道该怎么做?

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

OurTreats 类代码:

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]);
    }
}

标签: javaarraysmultidimensional-array

解决方案


OurTreats是您创建的类,并且BoxOfChocolates是该类的二维数组对象。所以基本上将存储的BoxOfChocolates[i][j]OurTreats类的单个实例。

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

int variable=BoxOfChocolates[2][4].DataMember

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

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

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


推荐阅读