Представляя пустой байтовый массив через переменную Int? - PullRequest
30 голосов
/ 26 февраля 2011

Какое значение должно быть присвоено переменной целочисленного типа для представления пустого байтового массива? Мне нужно это для хранения пустого байтового массива в базе данных, чтобы представлять бесполезный столбец в Cassandra.

Ответы [ 3 ]

76 голосов
/ 26 февраля 2011

Согласно Cassandra API http://wiki.apache.org/cassandra/API Пустой байтовый массив равен

byte[] emptyArray = new byte[0];
8 голосов
/ 26 февраля 2011

В общей терминологии Java пустой байтовый массив является байтовым массивом нулевой длины и может быть создан с помощью выражения Java new byte[0].Согласно принятому ответу, Casandra API использует стандартную терминологию.

Вы не можете * представлять байтовый массив, используя переменную целочисленного типа, потому что нет разумного способа представить оба байтасодержимое и длина массива в одном целом числе.

* - На самом деле вы можете закодировать состояние небольшого байтового массива (до длины 3) в int, но кодирование / декодирование может быть грязным... и это не имеет отношения к вопросу ОП.

3 голосов
/ 01 июля 2017

В Java вы можете создать новый массив, указав только длину желаемого массива

new type[length]

private byte[] getByteResponse() {
    return new byte[0];
}

Это должно сделать.

...