クラス CollectionUtils
java.lang.ObjectSE
org.springframework.util.CollectionUtils
色々なコレクションユーティリティメソッド。主にフレームワーク内での内部利用を目的としています。
- 導入:
- 1.1.3
- 作成者:
- Juergen Hoeller, Rob Harrop, Arjen Poutsma, Sam Brannen
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明static ListSE<?> arrayToList(@Nullable ObjectSE source) 指定された配列をリストに変換します。static <K,V> MapSE <K, V> compositeMap(MapSE<K, V> first, MapSE<K, V> second) 提供された 2 つのマップを組み合わせた (部分的に変更不可能な) マップを返します。static <K,V> MapSE <K, V> compositeMap(MapSE<K, V> first, MapSE<K, V> second, @Nullable BiFunctionSE<K, V, V> putFunction, @Nullable ConsumerSE<MapSE<K, V>> putAllFunction) 提供されたマップを組み合わせたマップを返します。static booleancontains(@Nullable EnumerationSE<? extends @Nullable ObjectSE> enumeration, @Nullable ObjectSE element) 指定されたEnumerationSE に指定された要素が含まれているかどうかを確認します。static boolean指定されたIteratorSE に指定された要素が含まれているかどうかを確認します。static booleancontainsAny(CollectionSE<? extends @Nullable ObjectSE> source, CollectionSE<? extends @Nullable ObjectSE> candidates) 'candidates' の要素が 'source' に含まれている場合、trueを返します。それ以外の場合はfalseを返します。static booleancontainsInstance(@Nullable CollectionSE<? extends @Nullable ObjectSE> collection, @Nullable ObjectSE element) 指定されたCollectionSE に指定された要素インスタンスが含まれているかどうかを確認します。findCommonElementType(CollectionSE<?> collection) 指定されたコレクションの共通要素型があれば、それを見つけます。static <E> @Nullable EfindFirstMatch(CollectionSE<?> source, CollectionSE<E> candidates) 'source' に含まれる 'candidates' の最初の要素を返します。static <T> @Nullable TfindValueOfType(@Nullable CollectionSE<?> collection, @Nullable ClassSE<T> type) 指定されたコレクションで指定された型の単一の値を見つけます。findValueOfType(CollectionSE<?> collection, ClassSE<?>[] types) 指定されたコレクション内の指定された型のいずれかの単一の値を検索します。最初の型の値をコレクションで検索し、次に 2 番目の型の値を検索します。static <T> @Nullable TfirstElement(@Nullable ListSE<T> list) ゼロインデックスにアクセスして、指定されたリストの最初の要素を取得します。static <T> @Nullable TfirstElement(@Nullable SetSE<T> set) SortedSet.first()またはイテレータを使用して、指定されたセットの最初の要素を取得します。static booleanhasUniqueObject(CollectionSE<?> collection) 指定されたコレクションに単一の一意のオブジェクトのみが含まれているかどうかを判断します。static booleanisEmpty(@Nullable CollectionSE<? extends @Nullable ObjectSE> collection) 指定されたコレクションがnullまたは空の場合、trueを返します。static boolean指定されたマップがnullまたは空の場合、trueを返します。static <T> @Nullable TlastElement(@Nullable ListSE<T> list) 指定されたリストの最後の要素を取得し、最高のインデックスにアクセスします。static <T> @Nullable TlastElement(@Nullable SetSE<T> set) SortedSet.last()を使用するか、他の方法ですべての要素を反復する(リンクされたセットを想定)、指定されたセットの最後の要素を取得します。static <E> voidmergeArrayIntoCollection(@Nullable ObjectSE array, CollectionSE<E> collection) 指定された配列を指定されたコレクションにマージします。static <K,V> void mergePropertiesIntoMap(@Nullable PropertiesSE props, MapSE<K, V> map) 指定された Properties インスタンスを指定された Map にマージし、すべてのプロパティ(キーと値のペア)をコピーします。static <K,V> HashMapSE <K, V> newHashMap(int expectedSize) すぐにサイズ変更 / 再ハッシュ操作を行うことなく、指定された数の要素に対応できる初期容量で新しいHashMapSE をインスタンス化します。static <E> HashSetSE<E> newHashSet(int expectedSize) すぐにサイズ変更 / 再ハッシュ操作を行うことなく、指定された数の要素に対応できる初期容量で新しいHashSetSE をインスタンス化します。static <K, V extends @Nullable ObjectSE>
LinkedHashMapSE<K, V> newLinkedHashMap(int expectedSize) すぐにサイズ変更 / 再ハッシュ操作を行うことなく、指定された数の要素に対応できる初期容量で新しいLinkedHashMapSE をインスタンス化します。static <E> LinkedHashSetSE<E> newLinkedHashSet(int expectedSize) すぐにサイズ変更 / 再ハッシュ操作を行うことなく、指定された数の要素に対応できる初期容量で新しいLinkedHashSetSE をインスタンス化します。static <A, E extends A>
A[]toArray(EnumerationSE<E> enumeration, A[] array) 指定された列挙の要素を指定された型の配列にマーシャリングします。static <E> IteratorSE<E> toIterator(@Nullable EnumerationSE<E> enumeration) EnumerationSE をIteratorSE に適合させます。static <K,V> MultiValueMap <K, V> toMultiValueMap(MapSE<K, ListSE<V>> targetMap) Map<K, List<V>>をMultiValueMap<K, V>に適合させます。static <K,V> MultiValueMap <K, V> unmodifiableMultiValueMap(MultiValueMap<? extends K, ? extends V> targetMap) 指定された複数値マップの変更不可能なビューを返します。
コンストラクターの詳細
CollectionUtils
public CollectionUtils()
メソッドの詳細
isEmpty
@Contract("null -> true") public static boolean isEmpty(@Nullable CollectionSE<? extends @Nullable ObjectSE> collection) 指定されたコレクションがnullまたは空の場合、trueを返します。それ以外の場合は、falseを返します。- パラメーター:
collection- チェックするコレクション- 戻り値:
- 指定されたコレクションが空かどうか
isEmpty
newHashMap
すぐにサイズ変更 / 再ハッシュ操作を行うことなく、指定された数の要素に対応できる初期容量で新しいHashMapSE をインスタンス化します。これは、負荷係数に関連して初期容量を取得するが、JDK の
ConcurrentHashMap(int)SE と効果的に整合する通常のHashMapSE コンストラクターとは異なります。- パラメーター:
expectedSize- 予想される要素数 (サイズ変更 / 再ハッシュ操作が不要になるように、対応する容量が導出されます)- 導入:
- 5.3
- 関連事項:
newLinkedHashMap
public static <K, V extends @Nullable ObjectSE> LinkedHashMapSE<K,V> newLinkedHashMap(int expectedSize) すぐにサイズ変更 / 再ハッシュ操作を行うことなく、指定された数の要素に対応できる初期容量で新しいLinkedHashMapSE をインスタンス化します。これは、負荷係数を基準とした初期容量を取る通常の
LinkedHashMapSE コンストラクターとは異なりますが、Spring 独自のLinkedCaseInsensitiveMapおよびLinkedMultiValueMapコンストラクターのセマンティクスと一致しています。- パラメーター:
expectedSize- 予想される要素数 (サイズ変更 / 再ハッシュ操作が不要になるように、対応する容量が導出されます)- 導入:
- 5.3
- 関連事項:
newHashSet
newLinkedHashSet
すぐにサイズ変更 / 再ハッシュ操作を行うことなく、指定された数の要素に対応できる初期容量で新しいLinkedHashSetSE をインスタンス化します。- パラメーター:
expectedSize- 予想される要素数 (サイズ変更 / 再ハッシュ操作が不要になるように、対応する容量が導出されます)- 導入:
- 6.2
- 関連事項:
arrayToList
指定された配列をリストに変換します。プリミティブ配列は、適切なラッパー型のリストに変換されます。注意 : 一般に、標準の
Arrays.asList(T...)SE 方式を好みます。このarrayToListメソッドは、実行時にObject[]またはプリミティブ配列である可能性のある受信 Object 値を処理するためのものです。nullソース値は空のリストに変換されます。- パラメーター:
source- (潜在的にプリミティブな)配列- 戻り値:
- 変換されたリストの結果
- 関連事項:
mergeArrayIntoCollection
public static <E> void mergeArrayIntoCollection(@Nullable ObjectSE array, CollectionSE<E> collection) 指定された配列を指定されたコレクションにマージします。- パラメーター:
array- マージする配列 (nullの場合があります)collection- 配列をマージするターゲットコレクション
mergePropertiesIntoMap
指定された Properties インスタンスを指定された Map にマージし、すべてのプロパティ(キーと値のペア)をコピーします。Properties.propertyNames()を使用して、元の Properties インスタンスにリンクされたデフォルトプロパティをキャッチします。- パラメーター:
props- マージする Properties インスタンス (nullの場合があります)map- プロパティをマージするターゲットマップ
contains
@Contract("null, _ -> false") public static boolean contains(@Nullable IteratorSE<? extends @Nullable ObjectSE> iterator, @Nullable ObjectSE element) 指定されたIteratorSE に指定された要素が含まれているかどうかを確認します。- パラメーター:
iterator- チェックするIteratorelement- 探す要素- 戻り値:
trueが見つかった場合、falseが見つからない場合
contains
@Contract("null, _ -> false") public static boolean contains(@Nullable EnumerationSE<? extends @Nullable ObjectSE> enumeration, @Nullable ObjectSE element) 指定されたEnumerationSE に指定された要素が含まれているかどうかを確認します。- パラメーター:
enumeration- チェックするEnumerationelement- 探す要素- 戻り値:
trueが見つかった場合、falseが見つからない場合
containsInstance
@Contract("null, _ -> false") public static boolean containsInstance(@Nullable CollectionSE<? extends @Nullable ObjectSE> collection, @Nullable ObjectSE element) 指定されたCollectionSE に指定された要素インスタンスが含まれているかどうかを確認します。等しい要素に対して
trueを返すのではなく、指定されたインスタンスが存在するように強制します。- パラメーター:
collection- チェックするCollectionelement- 探す要素- 戻り値:
trueが見つかった場合、falseが見つからない場合
containsAny
public static boolean containsAny(CollectionSE<? extends @Nullable ObjectSE> source, CollectionSE<? extends @Nullable ObjectSE> candidates) 'candidates' の要素が 'source' に含まれている場合、trueを返します。それ以外の場合はfalseを返します。- パラメーター:
source- ソースCollectionSEcandidates- 検索する候補- 戻り値:
- 候補が見つかったかどうか
findFirstMatch
'source' に含まれる 'candidates' の最初の要素を返します。"candidates" の要素が "source" に存在しない場合、nullを返します。反復順序はCollectionSE 実装固有です。- パラメーター:
source- ソースコレクションcandidates- 検索する候補- 戻り値:
- 最初に存在するオブジェクト、または
nullが見つからない場合
findValueOfType
findValueOfType
指定されたコレクション内の指定された型のいずれかの単一の値を検索します。最初の型の値をコレクションで検索し、次に 2 番目の型の値を検索します。- パラメーター:
collection- 検索するコレクションtypes- 検索する型、優先順位順- 戻り値:
- 明確な一致がある場合に見つかった指定された型のいずれかの値、またはそのような値が見つからないか複数の場合に
null
hasUniqueObject
指定されたコレクションに単一の一意のオブジェクトのみが含まれているかどうかを判断します。- パラメーター:
collection- チェックするコレクション- 戻り値:
- コレクションに同じインスタンスへの単一の参照または複数の参照が含まれる場合は
true、そうでない場合はfalse
findCommonElementType
指定されたコレクションの共通要素型があれば、それを見つけます。- パラメーター:
collection- チェックするコレクション- 戻り値:
- 共通要素型、または明確な共通型が見つからない場合は
null(またはコレクションが空でした)
firstElement
SortedSet.first()またはイテレータを使用して、指定されたセットの最初の要素を取得します。- パラメーター:
set- チェックするセット (nullまたは空の場合があります)- 戻り値:
- 最初の要素、または存在しない場合は
null - 導入:
- 5.2.3
- 関連事項:
firstElement
lastElement
SortedSet.last()を使用するか、他の方法ですべての要素を反復する(リンクされたセットを想定)、指定されたセットの最後の要素を取得します。- パラメーター:
set- チェックするセット (nullまたは空の場合があります)- 戻り値:
- 最後の要素、または存在しない場合は
null - 導入:
- 5.0.3
- 関連事項:
lastElement
toArray
指定された列挙の要素を指定された型の配列にマーシャリングします。列挙要素は、指定された配列の型に割り当て可能でなければなりません。返される配列は、指定された配列とは異なるインスタンスになります。toIterator
EnumerationSE をIteratorSE に適合させます。- パラメーター:
enumeration- 元のEnumeration- 戻り値:
- 適応した
Iterator
toMultiValueMap
Map<K, List<V>>をMultiValueMap<K, V>に適合させます。- パラメーター:
targetMap- 元の地図- 戻り値:
- 適応された多値マップ (元のマップをラップする)
- 導入:
- 3.1
unmodifiableMultiValueMap
public static <K,V> MultiValueMap<K,V> unmodifiableMultiValueMap(MultiValueMap<? extends K, ? extends V> targetMap) 指定された複数値マップの変更不可能なビューを返します。- パラメーター:
targetMap- 変更不可能なビューが返されるマップ。- 戻り値:
- 指定された複数値マップの変更不可能なビュー
- 導入:
- 3.1
compositeMap
提供された 2 つのマップを組み合わせた (部分的に変更不可能な) マップを返します。返されたマップでMap.put(Object, Object)SE またはMap.putAll(Map)SE を呼び出すと、UnsupportedOperationExceptionSE が生成されます。キーの衝突が発生した場合、
firstがsecondよりも優先されます。つまり、firstによってもマップされているキーを持つsecondのエントリは実質的に無視されます。- パラメーター:
first- 最初に作成した地図second- 2 番目に作成するマップ- 戻り値:
- 与えられた 2 つのマップを合成する新しいマップ
- 導入:
- 6.2
compositeMap
public static <K,V> MapSE<K,V> compositeMap(MapSE<K, V> first, MapSE<K, V> second, @Nullable BiFunctionSE<K, V, V> putFunction, @Nullable ConsumerSE<MapSE<K, V>> putAllFunction) 提供されたマップを組み合わせたマップを返します。返されたマップでMap.put(Object, Object)SE を呼び出すと、putFunctionが適用されるか、UnsupportedOperationExceptionSEputFunctionがnullとしてスローされます。同じことがMap.putAll(Map)SE とputAllFunctionにも当てはまります。キーの衝突が発生した場合、
firstがsecondよりも優先されます。つまり、firstによってもマップされているキーを持つsecondのエントリは実質的に無視されます。- パラメーター:
first- 最初に作成した地図second- 2 番目に作成するマップputFunction-Map::putが呼び出されたときに適用されます。nullの場合、Map::putはUnsupportedOperationExceptionをスローします。putAllFunction-Map::putAllが呼び出されたときに適用されます。nullの場合、Map::putAllはUnsupportedOperationExceptionをスローします。- 戻り値:
- ギブマップを構成する新しいマップ
- 導入:
- 6.2