|
Woolpack API | |||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectwoolpack.utils.Utils
public final class Utils
コレクションに関するユーティリティです。 型推論で表記を簡略するためのスタティックメソッドを含みます。
フィールドの概要 | |
---|---|
static java.util.Set<java.lang.Class<?>> |
ATOM_SET
値の個数に関して原子的であるクラスの一覧のデフォルト値です。 |
メソッドの概要 | ||
---|---|---|
static java.util.List<java.lang.Object> |
arrayToList(java.lang.Object value)
配列を変換した List のビューを返します。 |
|
static
|
concurrentMap(java.util.Map<K,V> map,
java.lang.Object lock)
ConcurrentMap で定義しているメソッドのみを lock で同期化するConcurrentMap のビューを返します。 |
|
static
|
injectiveMap(java.util.Map<K,V> map)
単射であることを維持する Map のビューを返します。 |
|
static
|
inverseMap(java.util.Map<K,V> before)
逆写像の Map のビューを返します。 |
|
static
|
keyNotEmptyMap(java.util.Map<java.lang.String,V> map)
キーの文字数がゼロであることを禁止する Map のビューを返します。 |
|
static
|
linkedMap(K key,
V value)
Javaの汎用型の推論を使用して LinkedHashMap を簡易に生成するための開始位置です。 |
|
static
|
linkedMap(java.util.Map<? extends K,? extends V> t)
Javaの汎用型の推論を使用して LinkedHashMap を簡易に生成するための開始位置です。 |
|
static
|
list(java.util.Collection<? extends V> c)
Javaの汎用型の推論を使用して List を簡易に生成するための開始位置です。 |
|
static
|
list(V v)
Javaの汎用型の推論を使用して List を簡易に生成するための開始位置です。 |
|
static
|
map(K key,
V value)
Javaの汎用型の推論を使用して Map を簡易に生成するための開始位置です。 |
|
static
|
map(java.util.Map<? extends K,? extends V> t)
Javaの汎用型の推論を使用して Map を簡易に生成するための開始位置です。 |
|
static
|
notNullMap(java.util.Map<K,V> map)
キー・値が null 値をとることを禁止する Map のビューを返します。 |
|
static
|
similarKeyMap(java.util.Map<java.lang.String,V> map)
類似の名前を同一とみなす Map のビューを返します。 |
|
static java.util.Collection<?> |
toCollection(java.lang.Object value)
オブジェクトを Collection に変換します。 |
|
static java.lang.Iterable<?> |
toIterable(java.lang.Object value)
オブジェクトを Iterable に変換します。 |
|
static java.util.List<?> |
toList(java.lang.Object value)
オブジェクトを List に変換します。 |
|
static java.util.List<java.lang.String> |
toMessageList(java.lang.Throwable throwable)
Throwable.getCause() をたどって
Throwable.getLocalizedMessage() の一覧に変換します。 |
|
static
|
unmodifiableIterable(java.lang.Iterable<E> iterable)
変更禁止の Iterable のビューを返します。 |
|
static
|
unoverwritableMap(java.util.Map<K,V> map)
キーに関して上書き禁止した Map のビューを返します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
public static final java.util.Set<java.lang.Class<?>> ATOM_SET
メソッドの詳細 |
---|
public static <K,V> java.util.Map<V,K> inverseMap(java.util.Map<K,V> before)
Map
のビューを返します。
引数が単射でなくなるキーと値の組を設定した場合は
IllegalStateException
を投げます。
K
- キー。V
- 値。before
- 逆写像の作成元。本メソッドはこの引数の状態を変化させません。
Map
。返却値の状態変化と引数の状態変化は相互に伝播します。
java.lang.IllegalStateException
- 引数が単射でない場合。public static <K,V> java.util.Map<K,V> injectiveMap(java.util.Map<K,V> map)
Map
のビューを返します。
単射とは「map#keySet()に含まれるすべての k0 と k1 について k0 != k1 ならば map#get(k0) != map#get(k1)」
であることを意味します。
または対偶をとって
「map#keySet()に含まれるすべての k0 と k1 について map#get(k0) == map#get(k1) ならば k0 == k1」
であることを意味します。
登録済の値を異なるキーで設定した場合は
IllegalStateException
を投げます。
K
- キー。V
- 値。map
- 単射であることを維持する対象のMap
。本メソッドはこの引数の状態を変化させません。
Map
。返却値の状態変化と引数の状態変化は相互に伝播します。public static <K,V> java.util.Map<K,V> unoverwritableMap(java.util.Map<K,V> map)
Map
のビューを返します。
登録済のキーを設定した場合はIllegalStateException
を投げます。
K
- キー。V
- 値。map
- キーに関して上書き禁止する対象のMap
。本メソッドはこの引数の状態を変化させません。
Map
。返却値の状態変化と引数の状態変化は相互に伝播します。public static <K,V> java.util.Map<K,V> notNullMap(java.util.Map<K,V> map)
Map
のビューを返します。
キーまたは値が null 値である組を設定した場合はNullPointerException
を投げます。
K
- キー。V
- 値。map
- キー・値がnull値をとることを禁止する対象のMap
。本メソッドはこの引数の状態を変化させません。
Map
。返却値の状態変化と引数の状態変化は相互に伝播します。public static <V> java.util.Map<java.lang.String,V> keyNotEmptyMap(java.util.Map<java.lang.String,V> map)
Map
のビューを返します。
文字数がゼロのキーを設定した場合は
StringIndexOutOfBoundsException
を投げます。
V
- 値。map
- キーの文字数がゼロであることを禁止する対象のMap
。本メソッドはこの引数の状態を変化させます。
Map
。返却値の状態変化と引数の状態変化は相互に伝播します。public static <V> java.util.Map<java.lang.String,V> similarKeyMap(java.util.Map<java.lang.String,V> map)
Map
のビューを返します。
類似の名前とは、大文字区切り(先頭文字の大文字と小文字の区別なし)と
アンダーバー区切り(大文字と小文字の区別なし)の相互変換の範囲とします。
V
- 値。map
- 類似の名前を同一とみなす対象のMap
。本メソッドはこの引数の状態を変化させません。
Map
。返却値の状態変化と引数の状態変化は相互に伝播します。public static <K,V> java.util.concurrent.ConcurrentMap<K,V> concurrentMap(java.util.Map<K,V> map, java.lang.Object lock)
ConcurrentMap
で定義しているメソッドのみを lock で同期化するConcurrentMap
のビューを返します。
DCLP(Double checked locking)パターンを使用しているためインスタンスが複数生成されることを抑止することはできませんが、
ひとつのインスタンスのみが複数のスレッドから参照されることを保証することができます。
Map
で定義されているメソッドは同期化しないので引数の
map が同期化されている必要があります。
K
- キー。V
- 値。map
- 対象のMap
。本メソッドはこの引数の状態を変化させません。lock
- ロックオブジェクト。
ConcurrentMap
。返却値の状態変化と引数の状態変化は相互に伝播します。public static <E> java.lang.Iterable<E> unmodifiableIterable(java.lang.Iterable<E> iterable)
Iterable
のビューを返します。
E
- 汎用型。iterable
- 変更禁止対象のIterable
。本メソッドはこの引数の状態を変化させません。
Iterable
。引数の状態変化はこの返却値に伝播します。public static java.util.List<java.lang.Object> arrayToList(java.lang.Object value)
List
のビューを返します。
value
- 配列。プリミティブ型の配列にも対応しています。
List
のビュー。返却値の状態変化と引数の状態変化は相互に伝播します。public static java.lang.Iterable<?> toIterable(java.lang.Object value)
Iterable
に変換します。
変換元が配列ならIterable
に変換します。
変換元がIterable
ならそのまま返します。
上記以外ならその値ひとつのIterable
を返します。
このクラスは LSP(The Liskov Substitution Principle) を満たしません。
value
- 変換元。
Iterable
。
変換元が配列またはIterable
の場合は返却値の状態変化と引数の状態変化は相互に伝播します。public static java.util.Collection<?> toCollection(java.lang.Object value)
Collection
に変換します。
変換元が配列ならCollection
に変換します。
変換元がCollection
ならそのまま返します。
上記以外ならその値ひとつのCollection
を返します。
このクラスは LSP(The Liskov Substitution Principle) を満たしません。
value
- 変換元。
Collection
。
変換元が配列またはCollection
の場合は返却値の状態変化と引数の状態変化は相互に伝播します。public static java.util.List<?> toList(java.lang.Object value)
List
に変換します。
変換元が配列ならList
に変換します。
変換元がList
ならそのまま返します。
上記以外ならその値ひとつのList
を返します。
このクラスは LSP(The Liskov Substitution Principle) を満たしません。
value
- 変換元。
List
。変換元が配列または
List
の場合は返却値の状態変化と引数の状態変化は相互に伝播します。public static java.util.List<java.lang.String> toMessageList(java.lang.Throwable throwable)
Throwable.getCause()
をたどって
Throwable.getLocalizedMessage()
の一覧に変換します。
中間のThrowable
の場合、
メッセージが null でないかつメッセージが原因の
Throwable.toString()
と同一でない場合にメッセージとして追加します。
終端のThrowable
の場合、
メッセージが null の場合はThrowable.toString()
をメッセージとして追加し、
メッセージが null でない場合はそれをメッセージとして追加します。
throwable
- 基点。
public static <V> BuildableArrayList<V> list(V v)
List
を簡易に生成するための開始位置です。
V
- v
- 追加する値。
BuildableArrayList
のインスタンス。public static <V> BuildableArrayList<V> list(java.util.Collection<? extends V> c)
List
を簡易に生成するための開始位置です。
V
- c
- コピー元。
BuildableArrayList
のインスタンス。public static <K,V> BuildableHashMap<K,V> map(K key, V value)
Map
を簡易に生成するための開始位置です。
K
- V
- key
- 追加するキー。value
- 追加するキーに対応する値。
BuildableHashMap
のインスタンス。public static <K,V> BuildableHashMap<K,V> map(java.util.Map<? extends K,? extends V> t)
Map
を簡易に生成するための開始位置です。
K
- V
- t
- コピー元。
BuildableHashMap
のインスタンス。public static <K,V> BuildableLinkedHashMap<K,V> linkedMap(K key, V value)
LinkedHashMap
を簡易に生成するための開始位置です。
K
- V
- key
- 追加するキー。value
- 追加するキーに対応する値。
BuildableLinkedHashMap
のインスタンス。public static <K,V> BuildableLinkedHashMap<K,V> linkedMap(java.util.Map<? extends K,? extends V> t)
LinkedHashMap
を簡易に生成するための開始位置です。
K
- V
- t
- コピー元。
BuildableLinkedHashMap
のインスタンス。
|
Woolpack API | |||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |