MesaSQLite является лучшим, я нашел до сих пор.
Взгляды, очень перспективные действительно.
Вы действительно не можете. В Java нет беззнаковых типов данных, за исключением char
.
По общему признанию, вы могли использовать char
- это 16-битный беззнаковый тип, но это было бы ужасно, на мой взгляд, поскольку char
явно предназначено для текста: когда код использует char
, я ожидаю, что он будет использовать его для единиц кода UTF-16, представляющих текст, который Интересные для программы, не произвольные беззнаковые 16-битные целые числа, не имеющие отношения к тексту.
В Java нет беззнаковых типов. Для чего он вам нужен?
Однако в Java есть тип данных «byte».
Ага, если вы хотите использовать значение в операциях кода и битов, такого нет.
Вы можете использовать char, поскольку это беззнаковое 16-битное значение (хотя технически это символ Юникода, поэтому в будущем он может потенциально измениться на 24-битное значение) ... другой вариант - использовать int и убедиться, что он находится в пределах диапазона.
Не используйте char - используйте int: -)
А вот ссылка , в которой обсуждается Java и отсутствие беззнакового .
If you really need a value with exactly 16 bits:
Solution 1: Use the available signed short and stop worrying about the sign, unless you need to do comparison (<, <=, >, >=) or division (/, %, >>) operations. See this answer for how to handle signed numbers as if they were unsigned.
Solution 2 (where solution 1 doesn't apply): Use the lower 16 bits of int and remove the higher bits with & 0xffff where necessary.
Вы можете создать класс ShortUnsigned
и определить методы для тех операторов, которые вам нужны. Вы не сможете перегрузить +
и -
и другие на них, а также не сможете выполнять неявное преобразование типов с другими примитивными или числовыми типами объектов, увы.
Как некоторые из другие респонденты, мне интересно, почему у вас острая потребность в беззнаковых коротких, которые не могут заполнить другие типы данных.