shohaku.core.collections
クラス ArrayUtils

java.lang.Object
  拡張shohaku.core.collections.ArrayUtils

public class ArrayUtils
extends java.lang.Object

配列のユーティリティメソッドを提供します。


コンストラクタの概要
ArrayUtils()
           
 
メソッドの概要
static java.lang.Object[] copy(java.lang.Object[] a)
          指定された配列のコピーを生成して返します。
static java.lang.String deepToString(java.lang.Object a)
          指定されたオブジェクトが配列の場合は配列の「深層内容」の文字列表現を返し、配列以外の場合その文字列表現を返します。
static java.lang.String deepToString(java.lang.Object[] a)
          指定された配列の「深層内容」の文字列表現を返します。
static java.lang.Class getSourceComponentType(java.lang.Class c)
          1次元または多次元配列の基に為るクラス型を取得します。
static int identitySearch(java.lang.Object[] a, java.lang.Object key)
          比較演算子 == により指定されたキーと同値の要素を先頭から線形検索します。
static void init(boolean[] a, boolean initValue)
          全ての配列の要素に指定の値を格納して配列を初期化します。
static void init(byte[] a, byte initValue)
          全ての配列の要素に指定の値を格納して配列を初期化します。
static void init(char[] a, char initValue)
          全ての配列の要素に指定の値を格納して配列を初期化します。
static void init(double[] a, double initValue)
          全ての配列の要素に指定の値を格納して配列を初期化します。
static void init(float[] a, float initValue)
          全ての配列の要素に指定の値を格納して配列を初期化します。
static void init(int[] a, int initValue)
          全ての配列の要素に指定の値を格納して配列を初期化します。
static void init(long[] a, long initValue)
          全ての配列の要素に指定の値を格納して配列を初期化します。
static void init(java.lang.Object[] a)
          全ての配列の要素に null を割り当て配列を初期化します。
static void init(java.lang.Object[] a, java.lang.Object initValue)
          全ての配列の要素に指定の値を格納して配列を初期化します。
static void init(short[] a, short initValue)
          全ての配列の要素に指定の値を格納して配列を初期化します。
static int lastIdentitySearch(java.lang.Object[] a, java.lang.Object key)
          比較演算子 == により指定されたキーと同値の要素を後方から線形検索します。
static int lastSearch(java.lang.Object[] a, java.lang.Object key)
          Object.equals メソッドにより指定されたキーと同値の要素を後方から線形検索します。
static java.lang.Object[] newInstance(java.lang.Object[] src)
          引数 src のクラス型の配列インスタンスを同じ配列数で生成して返します。
static java.lang.Object[] newInstance(java.lang.Object[] src, int length)
          src のクラス型の配列インスタンスを指定の配列数で生成して返します。
static int search(java.lang.Object[] a, java.lang.Object key)
          Object.equals メソッドにより指定された key と同値の要素を先頭から線形検索します。
static java.lang.String toString(boolean[] a)
          指定された配列の内容の文字列表現を返します。
static java.lang.String toString(byte[] a)
          指定された配列の内容の文字列表現を返します。
static java.lang.String toString(char[] a)
          指定された配列の内容の文字列表現を返します。
static java.lang.String toString(double[] a)
          指定された配列の内容の文字列表現を返します。
static java.lang.String toString(float[] a)
          指定された配列の内容の文字列表現を返します。
static java.lang.String toString(int[] a)
          指定された配列の内容の文字列表現を返します。
static java.lang.String toString(long[] a)
          指定された配列の内容の文字列表現を返します。
static java.lang.String toString(java.lang.Object a)
          指定されたオブジェクトが配列の場合は配列の内容の文字列表現を返し、配列以外の場合そのまま文字列表現を返します。
static java.lang.String toString(java.lang.Object[] a)
          指定された配列の文字列表現を返します。
static java.lang.String toString(short[] a)
          指定された配列の内容の文字列表現を返します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

ArrayUtils

public ArrayUtils()
メソッドの詳細

toString

public static java.lang.String toString(java.lang.Object a)
指定されたオブジェクトが配列の場合は配列の内容の文字列表現を返し、配列以外の場合そのまま文字列表現を返します。

配列型により対応する ArrayUtils.toString(#type#[] a) を呼び出します。
a が配列以外の場合は String.valueOf(a) により文字列に変換されます。
a が null の場合、 「null」 を返します。

パラメータ:
a - 文字列表現を返す配列
戻り値:
a の文字列表現

toString

public static java.lang.String toString(boolean[] a)
指定された配列の内容の文字列表現を返します。

文字列表現は、角括弧 (「[]」) で囲まれた配列要素のリストで構成されます。
隣接する要素は、文字「, 」(コンマおよび空白文字) で区切られます。
要素は、 String.valueOf(boolean) により文字列に変換されます。
a が null の場合、 「null」 を返します。

パラメータ:
a - 文字列表現を返す配列
戻り値:
a の文字列表現

toString

public static java.lang.String toString(char[] a)
指定された配列の内容の文字列表現を返します。

文字列表現は、角括弧 (「[]」) で囲まれた配列要素のリストで構成されます。
隣接する要素は、文字「, 」(コンマおよび空白文字) で区切られます。
要素は、 String.valueOf(char) により文字列に変換されます。
a が null の場合、 「null」 を返します。

パラメータ:
a - 文字列表現を返す配列
戻り値:
a の文字列表現

toString

public static java.lang.String toString(byte[] a)
指定された配列の内容の文字列表現を返します。

文字列表現は、角括弧 (「[]」) で囲まれた配列要素のリストで構成されます。
隣接する要素は、文字「, 」(コンマおよび空白文字) で区切られます。
要素は、 String.valueOf(byte) により文字列に変換されます。
aが null の場合、 「null」 を返します。

パラメータ:
a - 文字列表現を返す配列
戻り値:
a の文字列表現

toString

public static java.lang.String toString(short[] a)
指定された配列の内容の文字列表現を返します。

文字列表現は、角括弧 (「[]」) で囲まれた配列要素のリストで構成されます。
隣接する要素は、文字「, 」(コンマおよび空白文字) で区切られます。
要素は、 String.valueOf(short) により文字列に変換されます。
a が null の場合、 「null」 を返します。

パラメータ:
a - 文字列表現を返す配列
戻り値:
a の文字列表現

toString

public static java.lang.String toString(int[] a)
指定された配列の内容の文字列表現を返します。

文字列表現は、角括弧 (「[]」) で囲まれた配列要素のリストで構成されます。
隣接する要素は、文字「, 」(コンマおよび空白文字) で区切られます。
要素は、 String.valueOf(int) により文字列に変換されます。
a が null の場合、 「null」 を返します。

パラメータ:
a - 文字列表現を返す配列
戻り値:
a の文字列表現

toString

public static java.lang.String toString(long[] a)
指定された配列の内容の文字列表現を返します。

文字列表現は、角括弧 (「[]」) で囲まれた配列要素のリストで構成されます。
隣接する要素は、文字「, 」(コンマおよび空白文字) で区切られます。
要素は、 String.valueOf(long) により文字列に変換されます。
a が null の場合、 「null」 を返します。

パラメータ:
a - 文字列表現を返す配列
戻り値:
a の文字列表現

toString

public static java.lang.String toString(float[] a)
指定された配列の内容の文字列表現を返します。

文字列表現は、角括弧 (「[]」) で囲まれた配列要素のリストで構成されます。
隣接する要素は、文字「, 」(コンマおよび空白文字) で区切られます。
要素は、 String.valueOf(float) により文字列に変換されます。
a が null の場合、 「null」 を返します。

パラメータ:
a - 文字列表現を返す配列
戻り値:
a の文字列表現

toString

public static java.lang.String toString(double[] a)
指定された配列の内容の文字列表現を返します。

文字列表現は、角括弧 (「[]」) で囲まれた配列要素のリストで構成されます。
隣接する要素は、文字「, 」(コンマおよび空白文字) で区切られます。
要素は、 String.valueOf(double) により文字列に変換されます。
a が null の場合、 「null」 を返します。

パラメータ:
a - 文字列表現を返す配列
戻り値:
a の文字列表現

toString

public static java.lang.String toString(java.lang.Object[] a)
指定された配列の文字列表現を返します。
配列に要素以外の配列が含まれる場合、Object から拡張された Object.toString() メソッドにより配列が文字列に変換されます。
Object には、内容ではなく識別情報が記述されています。

このメソッドにより返される値は、a が null である場合を除き、Arrays.asList(a).toString() により返される値と等しくなります。
a が null の場合、 「null」 を返します。

パラメータ:
a - 文字列表現を返す配列
戻り値:
a の文字列表現

deepToString

public static java.lang.String deepToString(java.lang.Object a)
指定されたオブジェクトが配列の場合は配列の「深層内容」の文字列表現を返し、配列以外の場合その文字列表現を返します。
配列に要素以外の配列が含まれる場合、文字列表現にはその内容等が含まれます。
このメソッドは、多次元配列の文字列への変換用に設計されています。

プリミティブ配列型の場合は ArrayUtils.toString(Object a) を呼び出します。
オブジェクト配列型の場合は ArrayUtils.deepToString(Object[] a) を呼び出します。
a が配列以外の場合は String.valueOf(a) により文字列に変換されます。
a が null の場合、 「null」 を返します。

パラメータ:
a - 文字列表現を返す配列
戻り値:
a の文字列表現

deepToString

public static java.lang.String deepToString(java.lang.Object[] a)
指定された配列の「深層内容」の文字列表現を返します。
配列に要素以外の配列が含まれる場合、文字列表現にはその内容等が含まれます。
このメソッドは、多次元配列の文字列への変換用に設計されています。

文字列表現は、角括弧 (「[]」) で囲まれた配列要素のリストで構成されます。
隣接する要素は、文字「, 」(コンマおよび空白文字) で区切られます。
要素は、それ自体が配列でないかぎり String.valueOf(Object) により文字列に変換されます。

要素 e がプリミティブ型の配列である場合、Arrays.toString(e) の適切なオーバーロードを呼び出すことで文字列に変換されます。
要素 e が参照型の配列である場合、このメソッドを再帰的に呼び出すことで文字列に変換されます。

無限の再帰を避けるため、指定された配列に自身が要素として含まれるか、1 つまたは複数の配列レベルを介した自身への間接参照が含まれる場合、
自己参照は文字列「[...]」に変換されます。 たとえば、自身への参照だけを含む配列は、「[[...]]」としてレンダリングされます。

a が null の場合、 「null」 を返します。

パラメータ:
a - 文字列表現を返す配列
戻り値:
a の文字列表現

search

public static int search(java.lang.Object[] a,
                         java.lang.Object key)
Object.equals メソッドにより指定された key と同値の要素を先頭から線形検索します。
keynull の場合 (a[i] == null) で検証します。

パラメータ:
a - 検索元の配列
key - 検索するキー
戻り値:
Index 配列内でキーと同値の要素が最初に検出されたインデックス、同値が無い場合は -1
例外:
java.lang.NullPointerException - 配列に null が指定された場合

identitySearch

public static int identitySearch(java.lang.Object[] a,
                                 java.lang.Object key)
比較演算子 == により指定されたキーと同値の要素を先頭から線形検索します。
keynull の場合 (a[i] == null) で検証します。

パラメータ:
a - 検索元の配列
key - 検索するキー
戻り値:
Index 配列内でキーと同値の要素が最初に検出されたインデックス、同値が無い場合は -1
例外:
java.lang.NullPointerException - 配列に null が指定された場合

lastSearch

public static int lastSearch(java.lang.Object[] a,
                             java.lang.Object key)
Object.equals メソッドにより指定されたキーと同値の要素を後方から線形検索します。
keynull の場合 (a[i] == null) で検証します。

パラメータ:
a - 検索元の配列
key - 検索するキー
戻り値:
Index 配列内でキーと同値の要素が最初に検出されたインデックス、同値が無い場合は -1
例外:
java.lang.NullPointerException - 配列に null が指定された場合

lastIdentitySearch

public static int lastIdentitySearch(java.lang.Object[] a,
                                     java.lang.Object key)
比較演算子 == により指定されたキーと同値の要素を後方から線形検索します。
keynull の場合 (a[i] == null) で検証します。

パラメータ:
a - 検索元の配列
key - 検索するキー
戻り値:
Index 配列内でキーと同値の要素が最初に検出されたインデックス、同値が無い場合は -1
例外:
java.lang.NullPointerException - 配列に null が指定された場合

newInstance

public static java.lang.Object[] newInstance(java.lang.Object[] src)
引数 src のクラス型の配列インスタンスを同じ配列数で生成して返します。

パラメータ:
src - 生成する配列のクラス型を示す配列
戻り値:
配列インスタンス
例外:
java.lang.NullPointerException - srcnull が指定された場合

newInstance

public static java.lang.Object[] newInstance(java.lang.Object[] src,
                                             int length)
src のクラス型の配列インスタンスを指定の配列数で生成して返します。

パラメータ:
src - 生成する配列のクラス型を示す配列
length - 配列数
戻り値:
配列インスタンス
例外:
java.lang.NullPointerException - srcnull が指定された場合
java.lang.NegativeArraySizeException - 指定された length が負の場合

copy

public static java.lang.Object[] copy(java.lang.Object[] a)
指定された配列のコピーを生成して返します。

パラメータ:
a - コピー基の配列
戻り値:
配列のコピー
例外:
java.lang.NullPointerException - 配列に null が指定された場合

init

public static void init(char[] a,
                        char initValue)
全ての配列の要素に指定の値を格納して配列を初期化します。

パラメータ:
a - 初期化する配列
initValue - 初期値
例外:
java.lang.NullPointerException - 配列に null が指定された場合

init

public static void init(boolean[] a,
                        boolean initValue)
全ての配列の要素に指定の値を格納して配列を初期化します。

パラメータ:
a - 初期化する配列
initValue - 初期値
例外:
java.lang.NullPointerException - 配列に null が指定された場合

init

public static void init(byte[] a,
                        byte initValue)
全ての配列の要素に指定の値を格納して配列を初期化します。

パラメータ:
a - 初期化する配列
initValue - 初期値
例外:
java.lang.NullPointerException - 配列に null が指定された場合

init

public static void init(short[] a,
                        short initValue)
全ての配列の要素に指定の値を格納して配列を初期化します。

パラメータ:
a - 初期化する配列
initValue - 初期値
例外:
java.lang.NullPointerException - 配列に null が指定された場合

init

public static void init(int[] a,
                        int initValue)
全ての配列の要素に指定の値を格納して配列を初期化します。

パラメータ:
a - 初期化する配列
initValue - 初期値
例外:
java.lang.NullPointerException - 配列に null が指定された場合

init

public static void init(long[] a,
                        long initValue)
全ての配列の要素に指定の値を格納して配列を初期化します。

パラメータ:
a - 初期化する配列
initValue - 初期値
例外:
java.lang.NullPointerException - 配列に null が指定された場合

init

public static void init(float[] a,
                        float initValue)
全ての配列の要素に指定の値を格納して配列を初期化します。

パラメータ:
a - 初期化する配列
initValue - 初期値
例外:
java.lang.NullPointerException - 配列に null が指定された場合

init

public static void init(double[] a,
                        double initValue)
全ての配列の要素に指定の値を格納して配列を初期化します。

パラメータ:
a - 初期化する配列
initValue - 初期値
例外:
java.lang.NullPointerException - 配列に null が指定された場合

init

public static void init(java.lang.Object[] a)
全ての配列の要素に null を割り当て配列を初期化します。

パラメータ:
a - 初期化する配列
例外:
java.lang.NullPointerException - 配列に null が指定された場合

init

public static void init(java.lang.Object[] a,
                        java.lang.Object initValue)
全ての配列の要素に指定の値を格納して配列を初期化します。

パラメータ:
a - 初期化する配列
initValue - 初期値
例外:
java.lang.NullPointerException - 配列に null が指定された場合

getSourceComponentType

public static java.lang.Class getSourceComponentType(java.lang.Class c)
1次元または多次元配列の基に為るクラス型を取得します。配列以外の場合は指定のクラスがそのまま返ります。
例:java.lang.String[][] の配列型に対しては java.lang.String クラスが返されます。

パラメータ:
c - 検証するクラス
戻り値:
1次元または多次元配列の基に為るクラス型
例外:
java.lang.NullPointerException - 引数に null が指定された場合