パッケージ org.opengion.fukurou.util

クラス ArraySet<E>

  • すべての実装されたインタフェース:
    Serializable, Cloneable, Iterable<E>, Collection<E>, Set<E>

    public class ArraySet<E>
    extends LinkedHashSet<E>
    ArraySet.java は、LinkedHashSet を継承した、Setオブジェクトです。 初期オブジェクト作成のための、引数に、配列(可変長配列)を渡せるようにしています。 また、Iterable#forEach( Consumer ) で、ループカウンタが使えるように、新しく、 BiConsumer を引数に取る forEach( int , BiConsumer ) メソッドを用意しています。
    関連項目:
    直列化された形式
    変更履歴:
    6.4.3.4 (2016/03/11) 新規追加
    バージョン
    6.4
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK8.0,
    • コンストラクタの詳細

      • ArraySet

        public ArraySet​(E... elements)
        LinkedHashSet を継承した、Setオブジェクトです。 初期オブジェクト作成のための、引数に、配列を渡せるようにしています。
        パラメータ:
        elements - 初期値として設定する可変長配列
        変更履歴:
        7.0.1.1 (2018/10/22) 新規追加
    • メソッドの詳細

      • addAll

        public ArraySet<E> addAll​(Collection<E>... collect)
        他のCollectionオブジェクトを追加します。
        パラメータ:
        collect - Collectionオブジェクトの可変長配列
        戻り値:
        自分自身
        変更履歴:
        6.4.3.4 (2016/03/11) 新規追加
      • forEach

        public void forEach​(int cnt,
                            BiConsumer<Integer,​E> action)
        Iterable#forEach( Consumer ) で、引数に、ループカウンタを使用できるメソッドです。 ラムダ式から参照されるローカル変数は、finalまたは事実上のfinalである必要があります。 ところが、訳あって、ループカウンタが必要です。そこで、内部処理として、ループカウンタを 用意しておき、それを、ラムダ式の引数として渡す方法で、対応します。 一覧の処理は、内部で、Iterator#hasNext() と、Iterator#next() を使用しているため、 インスタンスレベルのsynchronized ブロックを使用しています。
        パラメータ:
        cnt - カウンタの初期値
        action - 各要素に対して実行されるアクション( カウンタ、内部オブジェクト )
        関連項目:
        Iterable.forEach( Consumer )
        変更履歴:
        6.4.3.4 (2016/03/11) 新規追加
      • toString

        public String toString()
        このオブジェクトの内部表現を、文字列にして返します。 内部オブジェクトの toString() を順番に呼んで、カンマで連結した文字列を返します。
        オーバーライド:
        toString クラス内 AbstractCollection<E>
        戻り値:
        引数に対する値
        変更履歴:
        7.0.1.1 (2018/10/22) 新規追加
        このメソッドは、nullを返しません