org.opengion.fukurou.util

## クラス ArraySet

- java.lang.Object
- - java.util.AbstractCollection
  - - java.util.AbstractSet
    - - java.util.HashSet
      - - java.util.LinkedHashSet
        - - org.opengion.fukurou.util.ArraySet

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

      public class ArraySet
      extends LinkedHashSet

       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(Object[] elements)` LinkedHashSet を継承した、Setオブジェクトです。

  - ### メソッドのサマリー

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `void` | `forEach(int cnt, BiConsumer action)` Iterable#forEach( Consumer ) で、引数に、ループカウンタを使用できるメソッドです。

    - ### クラスから継承されたメソッド java.util.LinkedHashSet

      `spliterator`

    - ### クラスから継承されたメソッド java.util.HashSet

      `add, clear, clone, contains, isEmpty, iterator, remove, size`

    - ### クラスから継承されたメソッド java.util.AbstractSet

      `equals, hashCode, removeAll`

    - ### クラスから継承されたメソッド java.util.AbstractCollection

      `addAll, containsAll, retainAll, toArray, toArray, toString`

    - ### クラスから継承されたメソッド java.lang.Object

      `finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### インタフェースから継承されたメソッド java.util.Set

      `add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray`

    - ### インタフェースから継承されたメソッド java.util.Collection

      `parallelStream, removeIf, stream`

    - ### インタフェースから継承されたメソッド java.lang.Iterable

      `forEach`

- - ### コンストラクタの詳細

    - #### ArraySet

          public ArraySet(Object[] elements)

      LinkedHashSet を継承した、Setオブジェクトです。 初期オブジェクト作成のための、引数に、配列を渡せるようにしています。
      パラメータ:
        `elements` - 初期値として設定する可変長配列
      変更履歴:

        6.4.3.4 (2016/03/11) 新規追加

  - ### メソッドの詳細

    - #### forEach

          public void forEach(int cnt,
                              BiConsumer action)

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

        6.4.3.4 (2016/03/11) 新規追加

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.