day 19コレクション関連

1671 ワード

1.list
  • インデックス付きリストプロパティ
  • ctrl+shift+oガイド
  • awtは、グラフィカルインターフェース
  • である.
  • remove(index)指定したインデックス要素を削除し、削除された要素
  • に戻る.
  • set(index)指定要素を修正し、修正前の要素
  • を返す.
  • 反復器同時修正
  • concurrentmodification :
     
    while (itr.hasNext()) {
            itr.next();
            arr.add(5); 
        }
    

    2.ストレージ構造
  • スタック:先進後出
  • キュー、
  • 先出
    3.ストレージの特徴
  • listクラス:検索速度ブロック(メモリ連続)だが、削除が遅い
  • チェーンテーブル:メモリが不連続で、前のデータは次のデータアドレスを覚えて、削除が速くて、検索が遅い
  • は日常的に検索作業が多いためArrayListは
  • を多く使用する.
  • linkedlist一方向リンク
  • 4.linklist
  • addfristヘッダに
  • を追加
  • addlast末尾追加
  • getfrist,getlast取得ヘッダ
  • link.isempty ()=link.size()
  • removefrist,removelastはヘッダを削除し、削除された
  • に戻る
    5.vector、廃棄された配列、セキュリティスレッドベクトル列挙がiterator
    6.setインタフェース
  • 重複要素は許可されず、反復器と強化forのみで、インデックスはありません.
  • setインタフェースは親collectionと同じ
  • 7.hashset(set自体がmapインスタンスに依存)
  • set反復順序は保証されないがnull
  • を保持することができる.
  • 下位データ構造ハッシュテーブル(hashtable)、アクセス平均ブロック、スレッド不安全
  • このクラスはチェーンテーブル配列結合体で、性能は自身の長さに比例し、長ければ長いほど遅くなり、ロード係数のデフォルトは0.75
  • です.
  • 配列が足りないと拡張され、一般的には2倍以上の拡張でメモリ消費量が
  • 多い.
    8.オブジェクトのhash値取得:hashcode(nativeメソッド)
  • ハッシュ値がsetに格納か否かの判定
  • String書き換えhashcode
  • hashtableメモリの判定繰返し方法(すなわちsetクラス判定繰返し)
  •  hash , hash ,
     equals ,equals 
    
  • 判定繰返しカスタムオブジェクトPerson
  •  hashcode:
    name.hashcode()+age*55(55 , )
     equals:
    null, (this),Person (instanceof) name age 
    
  • linkedhashset継承hashset格納順序(二重チェーンテーブル)
  • containsもequalsを呼び出し、listでaddリターン
  • hashsetでaddは繰り返すか否かを判断し、繰り返すとfalse
  • に戻る.
  • equalsが等しいとhashcodeは必ず同じであり、hashcodeが同じとは限らない--公式定義