byte配列同士の結合。
オブジェクトの配列同士の結合方法は数あれど、
プリミティブ型の配列同士の結合方法はなかなかヒットしないんざます。
今回はbyte配列同士の結合の必要にせまられたので、いろいろ調べてみた。
結果・・・
よーわからん。
byte[] a = {1, 2, 3};
byte[] b = {4, 5, 6};
これを結合して
byte[] c = {1, 2, 3, 4, 5, 6}という配列を作りたい。
たどり着いた先はByteBufferというクラス。
ByteBuffer byteBuf = ByteBuffer.allocate(6);
byteBuf.put(a);
byteBuf.put(b);
byte[] c = byteBuf.array();
これでaとbが結合されたcのbyte配列が完成・・・するらしい。動作未確認。
(2007/06/01 動作確認)
byte配列はこれでどうにかなるけど、他のプリミティブ型配列はやっぱり未解決。
余談。
jakarta commons primitivesがそれっぽいものを提供していそうな雰囲気だったけど、
javadocを見てみたら・・・
ListIteratorListIteratorクラス?なんだそりゃ。
javadoc読む前に一気に使う気が失せちゃった
オブジェクトの配列同士の結合方法は数あれど、
プリミティブ型の配列同士の結合方法はなかなかヒットしないんざます。
今回はbyte配列同士の結合の必要にせまられたので、いろいろ調べてみた。
結果・・・
よーわからん。
byte[] a = {1, 2, 3};
byte[] b = {4, 5, 6};
これを結合して
byte[] c = {1, 2, 3, 4, 5, 6}という配列を作りたい。
たどり着いた先はByteBufferというクラス。
ByteBuffer byteBuf = ByteBuffer.allocate(6);
byteBuf.put(a);
byteBuf.put(b);
byte[] c = byteBuf.array();
これでaとbが結合されたcのbyte配列が完成・・・するらしい。動作未確認。
(2007/06/01 動作確認)
byte配列はこれでどうにかなるけど、他のプリミティブ型配列はやっぱり未解決。
余談。
jakarta commons primitivesがそれっぽいものを提供していそうな雰囲気だったけど、
javadocを見てみたら・・・
ListIteratorListIteratorクラス?なんだそりゃ。
javadoc読む前に一気に使う気が失せちゃった
