int[] в ByteBuf

Версия Minecraft
1.12+
Код:
buf.writeInt(ints.length);
for (int i = 0; i < ints.length; i++)
    buf.writeInt(ints[i]);
---
ints = new int[buf.readInt()];
for (int i = 0; i < ints.length; i++)
    buf.readInt(ints[i]);
Так?
 
Никакого стандартного метода нет?
Вынести в отдельный метод не судьба?

Scala:
implicit class RichByteBuf(b:ByteBuf){
    def readIntArray():Array[Int]={
      val r=new Array[Int](b.readInt())
      
      for(i<-r.indices)
        r(i)=b.readInt()
      
      r
    }
    def writeIntArray(a:Array[Int]): ByteBuf = {
      b.writeInt(a.length)
      
      a.foreach(i=>b.writeInt(i))
      
      b
    }

  }
 
Назад
Сверху