Сохранине Вектора

Версия Minecraft
1.7.10
1,976
68
221
Доброго времени суток, господа о/

Такой, казалось бы, простой вопрос: как в NBT (тайла) сохранить/загрузить стандартный java'вский Vector с <Vec3> в нём?
Заранее спасибо за советы)
 
Vec3 - это три числа. NBT позволяет хранить числа.
 
Предлагаешь сериализовать вектор? Ну, можно, записать его размер и координаты...
Это получается любые типы именно так и хранят? Сериализованными? Просто я видел для тех же контейнеров какие-то методы которыми ItemStack'и запихивались в отдельный тэг и ещё что-то, чего я не особо понял :'D
 
Суть NBT и есть в сериализации. Для ItemStack просто есть готовые методы.
 
Dahaka написал(а):
Oldestkon написал(а):
А зачем длину vec3 писать? о_О
Это коллекция какая-то самописная, похоже. С полем size. Странно.
Когда внимательный:
AlexSocol написал(а):
java'вский Vector с <Vec3>
java.util.Vector#size();


Вернул скобочки. Не думал, что это так важно, ибо код писал от руки... там вообще сначала setInteger было, потом в код внёс, не сожрало, переписал там и тут на Double :'D
 
Вектор и лист - динамические массивы, которые содержат поле массива(внезапно, да?), а также они могут расширяться(создаётся массив побольше). Разница в том, что вектор расширяется в два раза больше(был 10, стал 20), а ArrayList на 50%(было 10, стало 15)
 
CoomingSoon написал(а):
Разница в том, что вектор расширяется в два раза больше(был 10, стал 20), а ArrayList на 50%(было 10, стало 15)
Это не совсем так. У вектора есть инкремент. Но если он не указан, то все, как ты и сказал.
Но главное отличие арэй листа от вектора - потокобезопастность у второго.


AlexSocol написал(а):
А точнее ( x3/2) + 1
Это одно и тоже, лол
int newCapacity = oldCapacity + (oldCapacity >> 1);
 
Назад
Сверху