java - 我如何在java中初始化这个二维数组?

标签 java arrays

我正在寻找在下面的代码中声明只能容纳 3 个不同值的 2D 数组的类型。

什么类型的二维数组可以为每个单元占用最少的内存并保存 3 个不同值之一?然后我将使用 for 循环初始化这样的数组。

class Grid{
    X[][] twoDimArray = new X[3][3];

    Grid(){

    }

    void printElements(){
    }
}

最佳答案

对于三个值,枚举非常引人注目;

enum ExampleEnum {
    ONE, TWO, THREE;

    @Override
    public String toString() {
        switch (this) {
        case ONE:
            return "One";
        case TWO:
            return "Two";
        default:
            return "Three";
        }
    }
}

那么你的数组声明可能看起来像,

ExampleEnum[][] twoDimArray = new ExampleEnum[3][3];

你可以使用Arrays.deepToString(Object[])对于像这样的输出

System.out.println(Arrays.deepToString(twoDimArray));

关于java - 我如何在java中初始化这个二维数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27653714/

相关文章:

java - 如何将每个 AsyncTask 类放在单独的文件中?

java - GWT i18n 消息属性不显示像 ß 这样的特殊字符

java - 无论如何要在 Java 中为编译时更改 String 的编码?

javascript - 更改数组中的字符串字符 - Javascript

powershell - 在 PowerShell 版本 2 中将字符串转换为字节数组

c# - 如何获得一个轴的多维长度

java - DefaultListModel 是否会覆盖我的 Action 监听器中的 Action 顺序?

java - 如何在java中的点后拆分字符串

arrays - 在 ElasticSearch 上搜索具有空数组字段的文档

c# - 如何从 C# 中的简单数组中获取元素?