jp.go.nict.langrid.commons.util
クラス ArrayUtil

java.lang.Object
  上位を拡張 jp.go.nict.langrid.commons.util.ArrayUtil

public class ArrayUtil
extends Object

配列に関するユーティリティ。

作成者:
Takao Nakaguchi

コンストラクタの概要
ArrayUtil()
           
 
メソッドの概要
static
<T> T[]
append(T[] elements, T... elements2)
          配列に配列を追加する。
static
<T> T[]
append(T[] elements, T element)
          配列に要素を追加する。
static
<T> T[]
array(T... elements)
          可変長引数を配列にして返す。
static Character[] box(char[] elements)
          プリミティブ配列をboxing。
static
<T> T[]
clone(T[] elements)
          配列がnullかチェックして、nullでなければcloneを返す。
static
<T,U> U[]
collect(T[] elements, Class<U> clazz, Transformer<T,U> transformer)
          オブジェクト配列を各要素についてtransformerを適用した値の配列に変換する。
static
<T,U> U[]
collect(T[] elements, Transformer<T,U> transformer)
          オブジェクト配列を各要素についてtransformerを適用した値の配列に変換する。
static
<T> boolean
elementsEqual(T[] src, T[] dst)
          配列の各要素が同じ(equalsがtrue)場合trueを返す。
static String[] emptyStrings()
          空の文字列配列を返す。
static
<T> T
first(T[] elements)
          配列の最初の要素を返す。
static
<T> T
getWithinBound(T[] elements, int index)
          配列内の要素を取得する。
static String join(Object[] elements, String separator)
          オブジェクト配列を各要素のtoString()メソッドが返す値と指定されたセパレータを使い結合する。
static String join(String[] elements, String separator)
          文字列配列を指定されたセパレータで結合する。
static
<T> T
last(T[] elements)
          配列の最後の要素を返す。
static
<T> T[]
subArray(T[] elements, int beginIndex)
          beginIndexから末尾までの部分配列を返す。
static
<T> T[]
subArray(T[] elements, int beginIndex, int endIndex)
          部分配列を返す。
static
<T> T[]
toArray(Iterable<T> elements, T[] a)
          Iterableオブジェクトから全要素を取り出し配列に変換する。
static byte[][] toBytesArray(String[] value, String encoding)
          文字配列をバイト配列に変換する。
static
<T> Object
toPrimitiveArray(Collection<T> collection, Class<T> clazz)
          ラッパークラスのコレクションをプリミティブの配列に変換する。
static String toString(Object array)
          配列を文字列に変換する。
static String[] toStringArray(byte[][] value, String encoding)
          バイト配列を文字配列に変換する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

ArrayUtil

public ArrayUtil()
メソッドの詳細

array

public static <T> T[] array(T... elements)
可変長引数を配列にして返す。

型パラメータ:
T - 要素の型
パラメータ:
elements - 要素
戻り値:
要素からなる配列

box

public static Character[] box(char[] elements)
プリミティブ配列をboxing。

パラメータ:
elements - プリミティブの配列
戻り値:
boxing結果

first

public static <T> T first(T[] elements)
配列の最初の要素を返す。

型パラメータ:
T - 要素の型
パラメータ:
elements - 要素
戻り値:
要素

last

public static <T> T last(T[] elements)
配列の最後の要素を返す。

型パラメータ:
T - 要素の型
パラメータ:
elements - 要素
戻り値:
要素

getWithinBound

public static <T> T getWithinBound(T[] elements,
                                   int index)
配列内の要素を取得する。indexが配列の外を示している場合はnullを返す。

型パラメータ:
T - 要素の型
パラメータ:
elements - 配列
index - 要素を取得するインデックス
戻り値:
要素(indexが境界外の場合null)

toString

public static String toString(Object array)
配列を文字列に変換する。

パラメータ:
array - 配列
戻り値:
文字列

elementsEqual

public static <T> boolean elementsEqual(T[] src,
                                        T[] dst)
配列の各要素が同じ(equalsがtrue)場合trueを返す。

型パラメータ:
T - 配列要素の型
パラメータ:
src - 比較元配列
dst - 比較先配列
戻り値:
各要素が同じ場合true

toArray

public static <T> T[] toArray(Iterable<T> elements,
                              T[] a)
Iterableオブジェクトから全要素を取り出し配列に変換する。

型パラメータ:
T - 要素型
パラメータ:
elements - 変換するオブジェクト
a - 取り出された要素を格納する配列。長さが足りない場合、新しい配列が作成される。
戻り値:
作成された配列

emptyStrings

public static String[] emptyStrings()
空の文字列配列を返す。

戻り値:
空の文字列配列

clone

public static <T> T[] clone(T[] elements)
配列がnullかチェックして、nullでなければcloneを返す。

型パラメータ:
T - 配列要素の型
パラメータ:
elements - 配列
戻り値:
nullもしくはcloneで作成されたオブジェクト

append

public static <T> T[] append(T[] elements,
                             T element)
配列に要素を追加する。

型パラメータ:
T - 要素のクラス
パラメータ:
elements - 配列
element - 要素
戻り値:
要素が追加された配列

append

public static <T> T[] append(T[] elements,
                             T... elements2)
配列に配列を追加する。

型パラメータ:
T - 要素のクラス
パラメータ:
elements - 配列
elements2 - 配列
戻り値:
全が追加された配列

subArray

public static <T> T[] subArray(T[] elements,
                               int beginIndex,
                               int endIndex)
部分配列を返す。

型パラメータ:
T - 要素の型
パラメータ:
elements - 配列
beginIndex - 開始インデックス(この要素を含む)
endIndex - 終了インデックス(この要素を含まない)
戻り値:
部分配列

subArray

public static <T> T[] subArray(T[] elements,
                               int beginIndex)
beginIndexから末尾までの部分配列を返す。

型パラメータ:
T - 要素の型
パラメータ:
elements - 配列
beginIndex - 開始インデックス(この要素を含む)
戻り値:
部分配列

join

public static String join(String[] elements,
                          String separator)
文字列配列を指定されたセパレータで結合する。

パラメータ:
elements - 文字列配列
separator - セパレータ
戻り値:
結合された文字列

join

public static String join(Object[] elements,
                          String separator)
オブジェクト配列を各要素のtoString()メソッドが返す値と指定されたセパレータを使い結合する。

パラメータ:
elements - 文字列配列
separator - セパレータ
戻り値:
結合された文字列

collect

public static <T,U> U[] collect(T[] elements,
                                Class<U> clazz,
                                Transformer<T,U> transformer)
                   throws TransformationException
オブジェクト配列を各要素についてtransformerを適用した値の配列に変換する。

型パラメータ:
T - 配列要素の型
U - 戻り値配列の型
パラメータ:
elements - オブジェクト配列
clazz - 変換後のオブジェクトのクラス
transformer - 変換に使用するTransformer
戻り値:
作成された配列
例外:
TransformationException - 変換に失敗した

collect

public static <T,U> U[] collect(T[] elements,
                                Transformer<T,U> transformer)
                   throws TransformationException
オブジェクト配列を各要素についてtransformerを適用した値の配列に変換する。 変換先クラスはtransformerから取得される。継承ツリーを辿って求められるため、 メソッドcollect(T[], Class clazz, Transformer)より動作は遅くなる。

型パラメータ:
T - 配列要素の型
U - 戻り値配列の型
パラメータ:
elements - オブジェクト配列
transformer - 変換に使用するTransformer
戻り値:
作成された配列
例外:
TransformationException - 変換に失敗した
IllegalArgumentException - transformerから変換先型情報が取得できない

toBytesArray

public static byte[][] toBytesArray(String[] value,
                                    String encoding)
                             throws UnsupportedEncodingException
文字配列をバイト配列に変換する。

パラメータ:
value - 文字配列
encoding - バイト配列に変換する際のエンコーディング
戻り値:
バイト配列
例外:
UnsupportedEncodingException - サポートしていないエンコーディングが指定された

toStringArray

public static String[] toStringArray(byte[][] value,
                                     String encoding)
                              throws UnsupportedEncodingException
バイト配列を文字配列に変換する。

パラメータ:
value - バイト配列
encoding - 文字配列に変換する際のエンコーディング
戻り値:
文字配列
例外:
UnsupportedEncodingException - サポートしていないエンコーディングが指定された

toPrimitiveArray

public static <T> Object toPrimitiveArray(Collection<T> collection,
                                          Class<T> clazz)
                               throws IllegalArgumentException
ラッパークラスのコレクションをプリミティブの配列に変換する。

パラメータ:
collection - コレクション
clazz - ラッパークラス
戻り値:
文字配列
例外:
IllegalArgumentException - clazzがラッパークラスではない。