如何在Java中初始化字节数组?

199

我需要在Java中以字节数组形式存储一些常量值(UUID),我想知道初始化这些静态数组的最佳方法是什么。下面是我目前的做法,但是我感觉肯定有更好的方式。

private static final byte[] CDRIVES = new byte[] { (byte)0xe0, 0x4f, (byte)0xd0,
    0x20, (byte)0xea, 0x3a, 0x69, 0x10, (byte)0xa2, (byte)0xd8, 0x08, 0x00, 0x2b,
    0x30, 0x30, (byte)0x9d };
private static final byte[] CMYDOCS = new byte[] { (byte)0xba, (byte)0x8a, 0x0d,
    0x45, 0x25, (byte)0xad, (byte)0xd0, 0x11, (byte)0x98, (byte)0xa8, 0x08, 0x00,
    0x36, 0x1b, 0x11, 0x03 };
private static final byte[] IEFRAME = new byte[] { (byte)0x80, 0x53, 0x1c,
    (byte)0x87, (byte)0xa0, 0x42, 0x69, 0x10, (byte)0xa2, (byte)0xea, 0x08,
    0x00, 0x2b, 0x30, 0x30, (byte)0x9d };
...
and so on

有没有什么我可以用的东西,可能不太高效,但看起来更干净? 例如:

private static final byte[] CDRIVES =
    new byte[] { "0xe04fd020ea3a6910a2d808002b30309d" };

由于它们被声明为“static final”,这可能已经是最合适的方式;被接受的答案完全忽略了这些关键字,甚至无法使用它们。 - Martin Zeitler
11个回答

-1
private static final int[] CDRIVES = new int[] {0xe0, 0xf4, ...};

访问后转换为字节。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接