CodeGym/Java Blog/рдпрд╛рджреГрдЪреНрдЫрд┐рдХ/Java рдордзреНрдпреЗ рдирдХрд╛рд╢рд╛ рдЗрдВрдЯрд░рдлреЗрд╕
John Squirrels
рдкрд╛рддрд│реА 41
San Francisco

Java рдордзреНрдпреЗ рдирдХрд╛рд╢рд╛ рдЗрдВрдЯрд░рдлреЗрд╕

рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдпрд╛ рдЧреНрд░реБрдкрдордзреНрдпреЗ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХреЗрд▓реЗ
рд╕рджрд╕реНрдп

рдЬрд╛рд╡рд╛ рдореЕрдк рдЗрдВрдЯрд░рдлреЗрд╕ рдХрд╛рдп рдЖрд╣реЗ

рдЬрд╛рд╡рд╛ рдореЕрдк рдЗрдВрдЯрд░рдлреЗрд╕ рд╣рд╛ рдЬрд╛рд╡рд╛ рдХрд▓реЗрдХреНрд╢рди рдлреНрд░реЗрдорд╡рд░реНрдХрдЪрд╛ рдПрдХ рднрд╛рдЧ рдЖрд╣реЗ, рдкрд░рдВрддреБ рддреЛ рдХрд▓реЗрдХреНрд╢рди рдЗрдВрдЯрд░рдлреЗрд╕рдЪрд╛ рдЙрдкрдкреНрд░рдХрд╛рд░ рдирд╛рд╣реА. рдореНрд╣рдгреВрди рддреЗ рд╡реЗрдЧрд│реНрдпрд╛ рдкрджреНрдзрддреАрдиреЗ рд╡рд╛рдЧрддреЗ, рдореНрд╣рдгрд╛, рд╕реВрдЪреА рдХрд┐рдВрд╡рд╛ рдЗрддрд░ рд╕рдВрдЧреНрд░рд╣рд┐рдд рд╡рд╕реНрддреВрдВрдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд. Map<Key, Value> рдЪрд╛ рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдореБрдЦреНрдп-рдореВрд▓реНрдп рдЬреЛрдбреАрдЪреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЛ. рдХреА рдЖрдгрд┐ рдореВрд▓реНрдп рджреЛрдиреНрд╣реА рдХрд╛рд╣реА рд╡рд╕реНрддреВ рдЖрд╣реЗрдд. рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирдХрд╛рд╢рд╛рддреАрд▓ рд╕рд░реНрд╡ рдХреА рдЕрджреНрд╡рд┐рддреАрдп рдЖрд╣реЗрдд, рддрд░ рдореВрд▓реНрдпреЗ рдирд╛рд╣реАрдд, рдореНрд╣рдгреВрди рддреНрдпрд╛рдВрдЪреА рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХреЗрд▓реА рдЬрд╛рдК рд╢рдХрддреЗ. рддреБрдореНрд╣реА Java рдордзреАрд▓ рдирдХрд╛рд╢рд╛рдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд░реВ рд╢рдХрддрд╛ рдЬрд╕реЗ рдХреА рдПрдХ рдкреНрд░рдХрд╛рд░рдЪрд╛ рд╢рдмреНрджрдХреЛрд╖ рдХрд┐рдВрд╡рд╛ рдСрдирд▓рд╛рдЗрди-рд╢реЙрдк рдХреЕрдЯрд▓реЙрдЧ, рдЬрд┐рдереЗ рддреБрдореНрд╣рд╛рд▓рд╛ рддреНрдпрд╛рдЪреА рдЕрджреНрд╡рд┐рддреАрдп рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рд╡рд╛рдкрд░реВрди рдХреЛрдгрддреАрд╣реА рд╡рд╕реНрддреВ рд╕рд╛рдкрдбреЗрд▓. рдХреА рд╣реА рдирдХрд╛рд╢рд╛рддреАрд▓ рдореВрд▓реНрдпрд╛рдЪреА рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рдУрд│рдЦрдХрд░реНрддрд╛ рдЖрд╣реЗ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде рдореЕрдк<рд╕реНрдЯреНрд░рд┐рдВрдЧрдордзреНрдпреЗ, рдЖрдпрдЯрдо> рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣рд╛ рдСрдирд▓рд╛рдЗрди рджреБрдХрд╛рдирд╛рддреАрд▓ рдХрд╛рд╣реА рдЖрдпрдЯрдордЪрд╛ рдЖрдпрдбреА рдЖрд╣реЗ. рдХрд╛рдЧрджрдкрддреНрд░рд╛рдВрдиреБрд╕рд╛рд░ рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдкреБрдвреАрд▓ рдЙрдк-рдЗрдВрдЯрд░рдлреЗрд╕ рдЖрд╣реЗрдд:
    рдмрдВрдзрдиреЗ ;
  • рд╕рдорд╡рд░реНрддреА рдирдХрд╛рд╢рд╛<K,V> ;
  • рд╕рдорд╡рд░реНрддреА рдиреЗрд╡реНрд╣реАрдЧреЗрдмрд▓ рдирдХрд╛рд╢рд╛<K,V> ;
  • LogicalMessageContext ;
  • MessageContext ;
  • рдиреЗрд╡реНрд╣рд┐рдЧреЗрдЯреЗрдмрд▓ рдирдХрд╛рд╢рд╛<K,V> ;
  • SOAPMessageContext ;
  • рдХреНрд░рдорд╡рд╛рд░реА рд▓рд╛рд╡рд▓реЗрд▓рд╛ рдирдХрд╛рд╢рд╛<K,V> .
рдЖрдгрд┐ рд╡рд░реНрдЧрд╛рдВрдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА:
  • AbstractMap
  • рд╡рд┐рд╢реЗрд╖рддрд╛
  • AuthProvider
  • рд╕рдорд╡рд░реНрддреА рд╣реЕрд╢рдореЕрдк
  • рд╕рдорд╡рд░реНрддреАSkipListMap
  • EnumMap
  • рд╣реЕрд╢рдореЕрдк
  • рд╣реЕрд╢рдЯреЗрдмрд▓
  • IdentityHashMap
  • LinkedHashMap
  • рдкреНрд░рд┐рдВрдЯрд░рд╕реНрдЯреЗрдЯ рдХрд╛рд░рдгреЗ
  • рдЧреБрдгрдзрд░реНрдо
  • рдкреНрд░рджрд╛рддрд╛
  • рд░реЗрдВрдбрд░рд┐рдВрдЧ рд╕рдВрдХреЗрдд
  • рд╕рд╛рдзреЗ рдмрд╛рдЗрдВрдбрд┐рдВрдЧреНрдЬ
  • TabularDataSupport
  • рдЯреНрд░реАрдореЕрдк
  • рдпреВрдЖрдпрдбреАрдлреЙрд▓реНрдЯреНрд╕
  • WeakHashMap
  • Java AbstractMap рд╣рд╛ рдПрдХ рдЕрдореВрд░реНрдд рд╡рд░реНрдЧ рдЖрд╣реЗ рдЬреЛ рдмрд╣реБрддреЗрдХ рдирдХрд╛рд╢рд╛ рдЗрдВрдЯрд░рдлреЗрд╕ рд▓рд╛рдЧреВ рдХрд░рддреЛ.
  • Java HashMap рд╣реЗ рд╣реЕрд╢ рдЯреЗрдмрд▓ рд╡рд╛рдкрд░реВрди рдХреА-рд╡реНрд╣реЕрд▓реНрдпреВ рдЬреЛрдбреНрдпрд╛ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░рдХреНрдЪрд░ рдЖрд╣реЗ.
  • Java TreeMap рд╣реЗ рдЯреНрд░реА рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░рдХреНрдЪрд░ рдЖрд╣реЗ, рдореНрд╣рдгрдЬреЗ рдХреНрд░рдорд╡рд╛рд░реА рдХреЗрд▓реЗрд▓реНрдпрд╛ рдХреАрд╕рд╣ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рд╛.
  • рдХрдордХреБрд╡рдд рдХреАрд╕рд╣ рд╣реЕрд╢ рдЯреЗрдмрд▓ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА WeakHashMap , рдпрд╛рдкреБрдвреЗ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдд рдирд╕рддреАрд▓ рддрд░ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╛рд╣рдХрд╛рджреНрд╡рд╛рд░реЗ рд╣рдЯрд╡рд▓реНрдпрд╛ рдЬрд╛рдК рд╢рдХрддреАрд▓ рдЕрд╢рд╛ рдореВрд▓реНрдпрд╛рдВрд╕рд╣ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рд╛.
  • LinkedHashMap рд╣рд╛ рдШрдЯрдХ рдЬреЛрдбрдгреНрдпрд╛рдЪреНрдпрд╛ рдХреНрд░рдорд╛рд╕рд╣ рдирдХрд╛рд╢рд╛ рдЖрд╣реЗ, рдЬреЛ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдХреНрд░рдорд╛рдиреЗ рдкреБрдирд░рд╛рд╡реГрддреНрддреАрд▓рд╛ рдЕрдиреБрдорддреА рджреЗрддреЛ.
  • EnumMap рдПрдирдо рдХреА рд╕рд╣ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЕреЕрдмрд╕реНрдЯреНрд░реЕрдХреНрдЯрдореЕрдк рд╡рд░реНрдЧ рд╡рд╛рдврд╡рддреЗ .
  • IdentityHashMap рджрд╕реНрддрдРрд╡рдЬрд╛рдВрдЪреА рддреБрд▓рдирд╛ рдХрд░рддрд╛рдирд╛ рд╕рдВрджрд░реНрднреАрдп рд╕рдорддреБрд▓реНрдп рддрдкрд╛рд╕рдгреАрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░рддреЗ, рд╕рдорд╛рди() рдкрджреНрдзрддреАрдРрд╡рдЬреА == рдСрдкрд░реЗрд╢рди рд╡рд╛рдкрд░реВрди рддреБрд▓рдирд╛ рдХрд░рддрд╛рдирд╛ рдХреА рд╕рд╣ рдореЕрдкрд┐рдВрдЧ рдХрд░рддреЗ
рдпреЗрдереЗ рдЖрдореНрд╣рд╛рд▓рд╛ рдореЕрдк рдЗрдВрдЯрд░рдлреЗрд╕рдЪреНрдпрд╛ рд╕рд░реНрд╡рд╛рдд рд▓реЛрдХрдкреНрд░рд┐рдп рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдордзреНрдпреЗ рд╕реНрд╡рд╛рд░рд╕реНрдп рдЖрд╣реЗ: рд╣реЕрд╢рдореЕрдк, рдЯреНрд░реАрдореЕрдк рдЖрдгрд┐ рд▓рд┐рдВрдХреНрдбрд╣реЕрд╢рдореЕрдк. рддрд╕реЗ, рдирдХрд╛рд╢рд╛ рдШрдЯрдХрд╛рдВрдЪрд╛ рдХреНрд░рдо рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдЕрд╕рддреЛ. рдореНрд╣рдгрд╛, TreeMap рдЖрдгрд┐ LinkedHashMap рдордзреНрдпреЗ рдШрдЯрдХрд╛рдВрдЪрд╛ рдЕрдВрджрд╛рдЬ рд▓рд╛рд╡рддрд╛ рдпреЗрдгреНрдпрд╛рдЬреЛрдЧрд╛ рдХреНрд░рдо рдЖрд╣реЗ, рддрд░ HashMap рдордзреНрдпреЗ рдирд╛рд╣реА.

рдирдХрд╛рд╢рд╛ рдкрджреНрдзрддреА

рдХреЛрдгрддреНрдпрд╛рд╣реА рдирдХрд╛рд╢рд╛рдЪреЗ рдореБрдЦреНрдп рдХрд╛рд░реНрдп рдореНрд╣рдгрдЬреЗ рдШрдЯрдХ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рдгреЗ, рдХрд╛рдврдгреЗ рдЖрдгрд┐ рд╢реЛрдзрдгреЗ.
  • рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдкреБрдЯ (рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА, рдСрдмреНрдЬреЗрдХреНрдЯ рд╡реНрд╣реЕрд▓реНрдпреВ) рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдПрдХ рдШрдЯрдХ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рддреЗ.
  • рдкрдмреНрд▓рд┐рдХ рд╡реНрд╣реЙрдЗрдб рдкреБрдЯ рдСрд▓ (рдирдХрд╛рд╢рд╛ рдирдХрд╛рд╢рд╛) рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирдХрд╛рд╢рд╛ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рддреЗ.
  • рдкрдмреНрд▓рд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯ рд░рд┐рдореВрд╡реНрд╣ (рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреАрдиреБрд╕рд╛рд░ рдПрдВрдЯреНрд░реА рд╣рдЯрд╡рддреЗ.
  • рдкрдмреНрд▓рд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдЧреЗрдЯ(рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреАрд╕рд╛рдареА рдореВрд▓реНрдп рдкрд░рдд рдХрд░рддреЗ.
  • рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдмреВрд▓рд┐рдпрди рд╕рдорд╛рд╡рд┐рд╖реНрдЯрдХреА (рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА) рдпрд╛ рдирдХрд╛рд╢рд╛рд╡рд░реВрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреА рд╢реЛрдзрддреЗ
  • public Set keySet() рдПрдХ Set рджреГрд╢реНрдп рджреЗрддреЗ рдЬреНрдпрд╛рдордзреНрдпреЗ рд╕рд░реНрд╡ рдХреА рдЕрд╕рддрд╛рдд
  • public Set entrySet() рд╕рд░реНрд╡ рдХреА рдЖрдгрд┐ рд╡реНрд╣реЕрд▓реНрдпреВрд╕рд╣ рд╕реЗрдЯ рд╡реНрд╣реНрдпреВ рдорд┐рд│рд╡рддреЗ.

рд╣реЕрд╢рдореЕрдк рдореНрд╣рдгрдЬреЗ рдХрд╛рдп

рд╣реЕрд╢рдореЕрдк рдореНрд╣рдгрдЬреЗ рдХрд╛рдп? рд╣реЗ Map<Key,Value> рдЗрдВрдЯрд░рдлреЗрд╕рдЪреЗ рд╕рд░реНрд╡рд╛рдд рд▓реЛрдХрдкреНрд░рд┐рдп рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЖрд╣реЗ. рд╣реА рдбреЗрдЯрд╛ рд░рдЪрдирд╛ рд╣реЕрд╢рд┐рдВрдЧ рддрддреНрддреНрд╡рд╛рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдЖрд╣реЗ.

рд╣реЕрд╢рдореЕрдк рдХрд╛рд░реНрдпрд╛рдЪреЗ рдореБрдЦреНрдп рддрддреНрддреНрд╡: рд╣реЕрд╢рд┐рдВрдЧ

рд╣реЕрд╢рдореЕрдк рдореНрд╣рдгрдЬреЗ рдХрд╛рдп рдЖрдгрд┐ рддреЗ рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реЗ рд╕рдордЬреВрди рдШреЗрдгреНрдпрд╛рд╕рд╛рдареА, рдкреНрд░рдердо рд╣реЕрд╢рд┐рдВрдЧ рдЖрдгрд┐ рд╣реЕрд╢ рдлрдВрдХреНрд╢рдиреНрд╕рдмрджреНрджрд▓ рдмреЛрд▓реВрдпрд╛. рд╣реЕрд╢ рдлрдВрдХреНрд╢рди рд╣реЗ рдЧрдгрд┐рддреАрдп рдЕрд░реНрдерд╛рдиреЗ рдлрдХреНрдд рдПрдХ рдлрдВрдХреНрд╢рди рдЖрд╣реЗ. рддреНрдпрд╛рдореБрд│реЗ рдХрд╛рд╣реА рдЗрдирдкреБрдЯ рд╡реНрд╣реЕрд▓реНрдпреВ (рдСрдмреНрдЬреЗрдХреНрдЯ, рдбреЗрдЯрд╛рдЪрд╛ рддреБрдХрдбрд╛) рдЕрд╕рддреЗ рдЖрдгрд┐ рдлрдВрдХреНрд╢рди рдпреЛрдЧреНрдп рдирд┐рдпрдо рд╡рд╛рдкрд░реВрди рдЖрдЙрдЯрдкреБрдЯ рд╡реНрд╣реЕрд▓реНрдпреВрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ - рд╣реЕрд╢. рдмрд░реНтАНрдпрд╛рдЪрджрд╛ рд╣реЕрд╢ рд╣реА рдпреЛрдЧреНрдп рд▓рд╛рдВрдмреАрдЪреА рд╣реЗрдХреНрд╕рд╛рдбреЗрд╕рд┐рдорд▓ рд╕рдВрдЦреНрдпрд╛ рдЕрд╕рддреЗ. рд░реВрдкрд╛рдВрддрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдВрдЪреЗ рдирд┐рдпрдо рднрд┐рдиреНрди рдЕрд╕реВ рд╢рдХрддрд╛рдд, рдкрд░рдВрддреБ рддреЗ рдЦрд╛рд▓реАрд▓ рддрддреНрддреНрд╡рд╛рдВрдЪреНрдпрд╛ рдЕрдзреАрди рдЖрд╣реЗрдд:
  1. рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЗрдирдкреБрдЯ (рдСрдмреНрдЬреЗрдХреНрдЯ) рдордзреНрдпреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЕрд╢ рдХреЛрдб рдЕрд╕рддреЛ.
  2. рдЬрд░ рджреЛрди рд╡рд╕реНрддреВ рд╕рдорд╛рди рдЕрд╕рддреАрд▓ рддрд░ рддреНрдпрд╛рдВрдЪреЗ рд╣реЕрд╢ рдХреЛрдб рджреЗрдЦреАрд▓ рд╕рдорд╛рди рдЕрд╕рддреАрд▓. рдЙрд▓рдЯ рд╕рддреНрдп рдирд╛рд╣реА.
  3. рд╣реЕрд╢ рдХреЛрдб рднрд┐рдиреНрди рдЕрд╕рд▓реНрдпрд╛рд╕, рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдирд┐рд╢реНрдЪрд┐рддрдкрдгреЗ рд╕рдорд╛рди рдирд╕рддрд╛рдд.
  4. рдХрд╛рд╣реАрд╡реЗрд│рд╛ рднрд┐рдиреНрди рд╡рд╕реНрддреВрдВрдордзреНрдпреЗ рд╕рдорд╛рди рд╣реЕрд╢ рдХреЛрдб рдЕрд╕реВ рд╢рдХрддреЛ. "рдЯрдХреНрдХрд░" рдирд╛рд╡рд╛рдЪреА рд╣реА рдПрдХ рдЕрддреНрдпрдВрдд рд╕рдВрднрд╛рд╡реНрдп рдШрдЯрдирд╛ рдЖрд╣реЗ рдЖрдгрд┐ рдЪрд╛рдВрдЧрд▓реНрдпрд╛ рджрд░реНрдЬрд╛рдЪреНрдпрд╛ рд╣реЕрд╢ рдлрдВрдХреНрд╢рдирдиреЗ рдЯрдХреНрдХрд░ рд╣реЛрдгреНрдпрд╛рдЪреА рд╢рдХреНрдпрддрд╛ рдХрдореА рдХреЗрд▓реА рдкрд╛рд╣рд┐рдЬреЗ.
Java рдордзреНрдпреЗ, рдкреНрд░рддреНрдпреЗрдХ рдСрдмреНрдЬреЗрдХреНрдЯрд▓рд╛ рд╣реЕрд╢ рдХреЛрдб рдЕрд╕рддреЛ. рд╣реЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреНрд▓рд╛рд╕рдЪреНрдпрд╛ рд╣реЕрд╢рдХреЛрдб рдкрджреНрдзрддреАрдиреЗ рдореЛрдЬрд▓реЗ рдЬрд╛рддреЗ, рд╕рд░реНрд╡ Java рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕рдЪреЗ рдкреЕрд░реЗрдВрдЯрд▓ рдХреНрд▓рд╛рд╕. рд╕рд╣рд╕рд╛, рд╡рд┐рдХрд╛рд╕рдХ рддреНрдпрд╛рдВрдЪреНрдпрд╛ рд╕реНрд╡рдд: рдЪреНрдпрд╛ рд╡рд░реНрдЧрд╛рд╕рд╛рдареА рд╣реА рдкрджреНрдзрдд рдЕрдзрд┐рд▓рд┐рдЦрд┐рдд рдХрд░рддрд╛рдд рддрд╕реЗрдЪ рддреНрдпрд╛рдВрдЪреНрдпрд╛рд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдкрджреНрдзрддреА рд╕рдорд╛рди рдЕрд╕рддрд╛рдд .

рд╣реЕрд╢рдореЕрдк: рддреЗ рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ

рдореНрд╣рдгреВрди рд╡рд░реНрдЧ HashMap<K,V> рдкреНрд░рддреНрдпреЗрдХ рдирдХрд╛рд╢рд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдордзреНрдпреЗ рдХреА рдЖрдгрд┐ рдореВрд▓реНрдпреЗ рдЕрд╕рддрд╛рдд. рд╣реЗ рд╣реЕрд╢рд┐рдВрдЧ рддрддреНрддреНрд╡реЗ рд╡рд╛рдкрд░реВрди рдХреА рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд░рддреЗ. рд╣реЕрд╢рдореЕрдкрдЪреНрдпрд╛ рдЖрдд рдХреА-рд╡реНрд╣реЕрд▓реНрдпреВ рдЬреЛрдбреНрдпрд╛ "рдмрдХреЗрдЯреНрд╕" рдордзреНрдпреЗ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХреЗрд▓реНрдпрд╛ рдЬрд╛рддрд╛рдд, рдпрд╛ рдмрд╛рджрд▓реНрдпрд╛ рдПрдХрддреНрд░рд┐рддрдкрдгреЗ "рдЯреЗрдмрд▓" рдмрдирд╡рддрд╛рдд, рд▓рд┐рдВрдХ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕реВрдЪреАрдВрдЪрд╛ рдЕрдВрддрд░реНрдЧрдд рдЕреЕрд░реЗ рдЖрдгрд┐ рддреНрдпрд╛рдЪрд╛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЖрдХрд╛рд░ 16 рдЕрд╕рддреЛ.. рдЬрд╛рд╡рд╛ рдордзреАрд▓ рд╣реЕрд╢рдореЕрдк рдХреА/рд╡реНрд╣реЕрд▓реНрдпреВ рдЬреЛрдбреА рдХреБрдареЗ рдореЕрдк рдХрд░рд╛рд╡реА рд╣реЗ рдмрдХреЗрдЯ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХреА рдЪрд╛ рд╣реЕрд╢рдХреЛрдб рд╡рд╛рдкрд░рддреЗ: рд╣реЕрд╢рдореЕрдкрдЪреЗ рдЕрд╡рдШрдб рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рд╣реЗ рдЖрд╣реЗ рдХреА рдЯреЗрдмрд▓рдЪрд╛ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд▓ (рдмрдХреЗрдЯ) [] рдлрдХреНрдд рдПрдХ рдЬреЛрдбреА рдирд╛рд╣реА рддрд░ рдЕрдиреЗрдХ рдареЗрд╡рддреЛ. рддреЗ рд╕реБрд╕реНрдкрд╖реНрдЯ рд╡рд╕реНрддреВ (рд▓рд┐рдВрдХреНрдбрд▓рд┐рд╕реНрдЯ рд╕рд╛рд░рдЦреЗ) рдореНрд╣рдгреВрди рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдд рдирд╛рд╣реАрдд, рдкрд░рдВрддреБ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕рд╛рдЦрд│реА рдореНрд╣рдгреВрди. рдкреНрд░рддреНрдпреЗрдХ рдЬреЛрдбреА рдкреБрдвреАрд▓ рдЬреЛрдбреАрд╕рд╛рдареА рдПрдХ рджреБрд╡рд╛ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд░рддреЗ рдпрд╛ рд╡рд╕реНрддреБрд╕реНрдерд┐рддреАрдореБрд│реЗ рд╕рд╛рдЦрд│реА рддрдпрд╛рд░ рдХреЗрд▓реА рдЬрд╛рддреЗ. рдореНрд╣рдгрдЬреЗрдЪ, рд╕рд░реНрд╡ рд╣реЕрд╢рдореЕрдк рдЬреЛрдбреНрдпрд╛ 16 рд╕рд╛рдЦрд│реНрдпрд╛рдВрдордзреНрдпреЗ рд╡рд┐рдЦреБрд░рд▓реЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд. рдЬреЗрд╡реНрд╣рд╛ рддреБрдореНрд╣реА рдЯреЗрдмрд▓рдордзреНрдпреЗ рдирд╡реАрди рдЬреЛрдбреА рдареЗрд╡рддрд╛, рддреЗрд╡реНрд╣рд╛ рдХреА рдЪреНрдпрд╛ рд╣реЕрд╢рдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рд╣реЗ рд╣реЕрд╢ рдХреА рдСрдмреНрдЬреЗрдХреНрдЯрдордзреНрдпреЗ рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реЗ рд╣реЕрд╢рдХреЛрдб рдлрдВрдХреНрд╢рди рдирд╛рд╣реА. рд╣реЗ 0-15 рдЪреНрдпрд╛ рд╢реНрд░реЗрдгреАрдд рдорд╛рдирд▓реЗ рдЬрд╛рддреЗ. рд╣реЕрд╢ рдЗрдВрдбреЗрдХреНрд╕рд╕рд╣ рдмрдХреЗрдЯрдордзреНрдпреЗ рд╕рд╛рдард╡рд▓реЗрд▓реНрдпрд╛ рдЬреЛрдбреНрдпрд╛рдВрдЪреНрдпрд╛ рд╕рд╛рдЦрд│реАрдордзреНрдпреЗ рдЬреЛрдбреА рдЬреЛрдбрд▓реА рдЬрд╛рддреЗ. рд╣рд╛ рджреГрд╖реНрдЯрд┐рдХреЛрди рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рд╢реЛрдз рдкреНрд░рд╡реЗрдЧ рджреЗрддреЛ. рдХрд┐рд▓реНрд▓реАрджреНрд╡рд╛рд░реЗ рдЬреЛрдбреА рд╢реЛрдзрдд рдЕрд╕рддрд╛рдирд╛, рд╕рдВрдкреВрд░реНрдг рдЯреЗрдмрд▓рдордзреВрди рдЬрд╛рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА. рдХреАрдЪреНрдпрд╛ рд╣реЕрд╢рдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ рдЖрдгрд┐ рдлрдХреНрдд рд╣реЕрд╢ рдЗрдВрдбреЗрдХреНрд╕рд╕рд╣ рд╕реЗрд▓рдордзреНрдпреЗ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХреЗрд▓реЗрд▓реА рд╕рд╛рдЦрд│реА рддрдкрд╛рд╕рд▓реА рдЬрд╛рддреЗ. рд╣реЕрд╢рдореЕрдкрдордзреНрдпреЗ рдмрд░реНрдпрд╛рдЪ рдЬреЛрдбреНрдпрд╛ рдЕрд╕рд▓реНрдпрд╛рд╕, рд╕рд╛рдЦрд│реНрдпрд╛ рдЦреВрдк рд▓рд╛рдВрдм рд╣реЛрддрд╛рдд. рдордЧ рдЕреЕрд░реЗрдЪрд╛ рдЖрдХрд╛рд░ рд╡рд╛рдврддреЛ, рд╕рд░реНрд╡ рд╕рдВрдЧреНрд░рд╣рд┐рдд рд╡рд╕реНрддреВрдВрдЪреНрдпрд╛ рд╣реЕрд╢рдЪреА рдкреБрдирд░реНрдЧрдгрдирд╛ рдХреЗрд▓реА рдЬрд╛рддреЗ рдЖрдгрд┐ рддреЗ рдирд╡реАрди рд╕рд╛рдЦрд│реНрдпрд╛рдВрд╕рд╣ рд╡рд┐рдЦреБрд░рд▓реЗ рдЬрд╛рддрд╛рдд.

рд╣реЕрд╢рдореЕрдк рдШреЛрд╖рдгрд╛

рддреБрдореНрд╣реА рд╣реЕрд╢рдореЕрдк рдХреЛрдб рд╡рд░реНрдЧрд╛рдд рдЧреЗрд▓реНрдпрд╛рд╕ рддреБрдореНрд╣рд╛рд▓рд╛ рдкреБрдвреАрд▓ рдШреЛрд╖рдгрд╛ рд╕рд╛рдкрдбреЗрд▓:
public class HashMap extends AbstractMap implements Map, Cloneable, Serializable
рдЬреЗрдереЗ K рд╣рд╛ рдирдХрд╛рд╢рд╛рджреНрд╡рд╛рд░реЗ рдареЗрд╡рд▓реЗрд▓реНрдпрд╛ рдХрд│рд╛рдВрдЪрд╛ рдкреНрд░рдХрд╛рд░ рдЖрд╣реЗ рдЖрдгрд┐ V - рдореЕрдк рдХреЗрд▓реЗрд▓реНрдпрд╛ рдореВрд▓реНрдпрд╛рдВрдЪрд╛ рдкреНрд░рдХрд╛рд░. рд╣реЗ рддреБрдордЪреНрдпрд╛ рдХреЛрдбрдордзреАрд▓ рдкреВрд░реНрдгрд╛рдВрдХ рдХреА рдЖрдгрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореВрд▓реНрдпрд╛рд╕рд╣ рд╣реЕрд╢рдореЕрдк рдШреЛрд╖рдгреЗрдЪреЗ рдЙрджрд╛рд╣рд░рдг рдЖрд╣реЗ:
HashMap<Integer, String> myHashMap = new HashMap<Integer, String>();

рд╣реЕрд╢рдореЕрдк рдкрджреНрдзрддреА

рд╣реЕрд╢рдореЕрдк рдкрджреНрдзрддреАрдВрдЪреА рдпрд╛рджреА рдпреЗрдереЗ рдЖрд╣реЗ.
  • рдСрдмреНрдЬреЗрдХреНрдЯ рдЧреЗрдЯ(рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреАрд╕рд╛рдареА рдореВрд▓реНрдп рдкрд░рдд рдХрд░рддреЗ;
  • рдСрдмреНрдЬреЗрдХреНрдЯ рдкреБрдЯ (рдХреА k, рд╡реНрд╣реЕрд▓реНрдпреВ v) рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдХреА рд╡реНрд╣реЕрд▓реНрдпреВ рдореЕрдкрд┐рдВрдЧ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рддреЗ;
  • рдСрдмреНрдЬреЗрдХреНрдЯ рд░рд┐рдореВрд╡реНрд╣ (рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА) рдЬрд░ рдЙрдкрд╕реНрдерд┐рдд рдЕрд╕реЗрд▓ рддрд░ рдпрд╛ рдирдХрд╛рд╢рд╛рд╡рд░реВрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреАрд╕рд╛рдареА рдореЕрдкрд┐рдВрдЧ рдХрд╛рдвреВрди рдЯрд╛рдХрддреЗ;
  • void clear() рд╣реЕрд╢рдореЕрдкрдордзреВрди рд╕рд░реНрд╡ рдХреА-рд╡реНрд╣реЕрд▓реНрдпреВ рдЬреЛрдбреНрдпрд╛ рдХрд╛рдвреВрди рдЯрд╛рдХрддреЗ;
  • рдСрдмреНрдЬреЗрдХреНрдЯ рдХреНрд▓реЛрди() рдХреА рдЖрдгрд┐ рд╡реНрд╣реЕрд▓реНрдпреВ рдХреНрд▓реЛрди рди рдХрд░рддрд╛ рдпрд╛ рд╣реЕрд╢рдореЕрдк рдЙрджрд╛рд╣рд░рдгрд╛рдЪреА рдЙрдерд│ рдкреНрд░рдд рджреЗрддреЗ;
  • рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреА рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдЖрдврд│рд▓реНрдпрд╛рд╕ boolean containsKey(рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА) рд╕рддреНрдп рдорд┐рд│рд╡рддреЗ, рдирд╕рд▓реНрдпрд╛рд╕ рдЦреЛрдЯреА;
  • рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреА рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдЖрдврд│рд▓реНрдпрд╛рд╕ рдмреБрд▓рд┐рдпрди рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рд╡реНрд╣реЕрд▓реНрдпреВ(рдСрдмреНрдЬреЗрдХреНрдЯ рд╡реНрд╣реЕрд▓реНрдпреВ) рд╕рддреНрдп рдорд┐рд│рд╡рддреЗ, рдирд╕рд▓реНрдпрд╛рд╕ рдЦреЛрдЯреА;
  • рдмреВрд▓рд┐рдпрди isEmpty() рдирдХрд╛рд╢рд╛ рд░рд┐рдХрд╛рдорд╛ рдЕрд╕рд▓реНрдпрд╛рд╕ рд╕рддреНрдп рдорд┐рд│рд╡рддреЗ, рдирд╕рд▓реНрдпрд╛рд╕ рдЦреЛрдЯреЗ рджреЗрддреЗ;
  • рд╕реЗрдЯ keySet() рдирдХрд╛рд╢рд╛рд╡рд░реВрди рдЖрдгрд▓реЗрд▓реНрдпрд╛ рдХрд│рд╛рдВрдЪрд╛ рд╕рдВрдЪ рдкрд░рдд рдХрд░рддреЛ;
  • int size() рдХреА-рд╡реНрд╣реЕрд▓реНрдпреВ рдореЕрдкрд┐рдВрдЧрдЪреЗ рдкреНрд░рдорд╛рдг рдкрд░рдд рдХрд░рддреЗ;
  • рд╕рдВрдХрд▓рди рдореВрд▓реНрдпреЗ() рдирдХрд╛рд╢рд╛рдЪреНрдпрд╛ рдореВрд▓реНрдпрд╛рдВрдЪрд╛ рд╕рдВрдЧреНрд░рд╣ рдкрд░рдд рдХрд░рддреЗ;
  • рдСрдмреНрдЬреЗрдХреНрдЯ рд░рд┐рдореВрд╡реНрд╣ (рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреАрд╕рд╛рдареА рдХреА-рд╡реНрд╣реЕрд▓реНрдпреВ рдЬреЛрдбреА рдХрд╛рдвреВрди рдЯрд╛рдХрддреЗ;
  • void putAll(Map m) рдирдХрд╛рд╢рд╛рдЪреЗ рд╕рд░реНрд╡ рдШрдЯрдХ рдЗрддрд░ рдирдХрд╛рд╢рд╛рд╡рд░ рдХреЙрдкреА рдХрд░рддреЗ.

Java HashMap рдЙрджрд╛рд╣рд░рдг

рддреЗ рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реЗ рджрд╛рдЦрд╡рдгреНрдпрд╛рд╕рд╛рдареА Java HashMap рдЙрджрд╛рд╣рд░рдгрд╛рд╕рд╣ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рддрдпрд╛рд░ рдХрд░реВ:
import java.util.HashMap;
import java.util.Map;
import java.util.Iterator;
import java.util.Set;

public class HashMap {

   public static void main(String[] args) {

       {

           // HashMap declaration
           HashMap<Integer, String> myHashMap = new HashMap<Integer, String>();

           //Adding elements into HashMap
           myHashMap.put(7, "Johnny");
           myHashMap.put(8, "Ivy");
           myHashMap.put(1, "Rick");
           myHashMap.put(4, "Stan");
           myHashMap.put(3, "Kyle");

           //print out the map content using Iterator
           Set set = myHashMap.entrySet();
           Iterator iterator = set.iterator();
           while (iterator.hasNext()) {
               Map.Entry mapEntry = (Map.Entry) iterator.next();
               System.out.print("key: " + mapEntry.getKey() + " value: ");
               System.out.println(mapEntry.getValue());
           }
           System.out.println("get an element from myHashMap via key and print the value out:");
           System.out.println(myHashMap.get(8));
           //print out hashMap on standard way:
           System.out.println(myHashMap);

           // Get values based on key
           String var = myHashMap.get(2);
           //here we'll get null, we don't have such a key
           System.out.println("Value with key 2: " + var);
           var = myHashMap.get(7);
           System.out.println("Value with key 7: " + var);

           // Remove values based on key
           myHashMap.remove(4);
           System.out.println("myHashMap after removing element:");
           System.out.println(myHashMap);
           myHashMap.clear();
           System.out.println("myHashMap after total clearing:");
           System.out.println(myHashMap);
       }

   }
}
рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪреЗ рдкрд░рд┐рдгрд╛рдо:
key: 1 value: Rick
key: 3 value: Kyle
key: 4 value: Stan
key: 7 value: Johnny
key: 8 value: Ivy
get an element from myHashMap via key and print the value out:
Ivy
{1=Rick, 3=Kyle, 4=Stan, 7=Johnny, 8=Ivy}
Value with key 2: null
Value with key 7: Johnny
myHashMap after removing element:
{1=Rick, 3=Kyle, 7=Johnny, 8=Ivy}
myHashMap after total clearing:
{}

рдЯреНрд░реАрдореЕрдк

Java рдордзреАрд▓ TreeMap рджреЗрдЦреАрд▓ Map<Key,Value> рдЗрдВрдЯрд░рдлреЗрд╕ рд▓рд╛рдЧреВ рдХрд░рддреЗ, рдкрд░рдВрддреБ рддреЗ рд░реЗрдб-рдмреНрд▓реЕрдХ рдЯреНрд░реА рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░рдХреНрдЪрд░рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдЖрд╣реЗ. рдЭрд╛рдбрд╛рдордзреНрдпреЗ "рдиреЛрдбреНрд╕" рдЖрдгрд┐ рд░реЗрд╖рд╛ рдЕрд╕рддрд╛рдд рдЬреНрдпрд╛ рдиреЛрдбреНрд╕ - рд╢рд╛рдЦрд╛рдВрдирд╛ рдЬреЛрдбрддрд╛рдд. "рд░реВрдЯ" рдиреЛрдб рдЭрд╛рдбрд╛рдЪреНрдпрд╛ рд╢реАрд░реНрд╖рд╕реНрдерд╛рдиреА рдЕрд╕рддреЛ. рдореБрд│рд╛рдкрд╛рд╕реВрди, рд╢рд╛рдЦрд╛ рдЖрдгрд┐ рдиреЛрдбреНрд╕ рдЕрд╕реВ рд╢рдХрддрд╛рдд. рд╣реА рдПрдХ рд╢реНрд░реЗрдгреАрдмрджреНрдз рд░рдЪрдирд╛ рдЖрд╣реЗ, рддреБрдореНрд╣реА рд╡рд┐рдЪрд╛рд░ рдХрд░реВ рд╢рдХрддрд╛. рд╣реЗ рдиреЛрдбреНрд╕ рд░реВрдЯрдЪреЗ "рдореБрд▓реЗ" рдореНрд╣рдгреВрди. рдЪрд╛рдЗрд▓реНрдб рдиреЛрдбрдЪреА рд╕реНрд╡рддрдГрдЪреА рдореБрд▓реЗ рдЕрд╕реВ рд╢рдХрддрд╛рдд - рд▓реЛрдЕрд░ рдиреЛрдбреНрд╕. рдореБрд▓реЗ рдирд╕рд▓реЗрд▓реНрдпрд╛ рдиреЛрдбреНрд╕рдирд╛ "рдПрдВрдб-рдиреЛрдбреНрд╕" рдХрд┐рдВрд╡рд╛ "рдкрд╛рдиреЗ" рдореНрд╣рдгрддрд╛рдд. рдмрд╛рдпрдирд░реА рдЯреНрд░реА рд╣реЗ рдПрдХ рдЭрд╛рдб рдЖрд╣реЗ, рдЬрд┐рдереЗ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдбрдордзреНрдпреЗ рд╢реВрдиреНрдп, рдПрдХ рдЕрд╕рддреЗ. , рдХрд┐рдВрд╡рд╛ рджреЛрди рдореБрд▓реЗ. рдмрд╛рдпрдирд░реА рд╢реЛрдз рд╡реГрдХреНрд╖ рд╣реА рдПрдХ рд░рдЪрдирд╛ рдЖрд╣реЗ, рдЬрд┐рдереЗ рдкреНрд░рддреНрдпреЗрдХ рдЕрдВрддрд░реНрдЧрдд рдиреЛрдб рдПрдХ рдХреА рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд░рддреЗ, рдЖрдгрд┐ рдХрдзреАрдХрдзреА рд╕рдВрдмрдВрдзрд┐рдд рдореВрд▓реНрдп, рдЖрдгрд┐ рджреЛрди рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрдк-рд╡реГрдХреНрд╖ ("рдбрд╛рд╡реАрдХрдбреЗ" рдЖрдгрд┐ "рдЙрдЬрд╡реАрдХрдбреЗ") рдЕрд╕рддрд╛рдд. рд╕реЗрд▓реНрдл-рдмреЕрд▓рдиреНрд╕рд┐рдВрдЧ рдмрд╛рдпрдирд░реА рд╕рд░реНрдЪ рдЯреНрд░реА рд╣реЗ рдиреЛрдб-рдЖрдзрд╛рд░рд┐рдд рдмрд╛рдпрдирд░реА рд╕рд░реНрдЪ рдЯреНрд░реА рдЖрд╣реЗ рдЬреЗ рд╕реНрд╡реИрд░рдкрдгреЗ рдЖрдпрдЯрдо рдЗрдиреНрд╕рд░реНрдЯреЗрд╢рди рдЖрдгрд┐ рдбрд┐рд▓реАрдЯ рдХреЗрд▓реНрдпрд╛рд╡рд░ рддреНрдпрд╛рдЪреА рдЙрдВрдЪреА (рдореВрд│рд╛рдЪреНрдпрд╛ рдЦрд╛рд▓реА рдЬрд╛рд╕реНрддреАрдд рдЬрд╛рд╕реНрдд рдкрд╛рддрд│реА) рдХрдореА рдареЗрд╡рддреЗ. рд▓рд╛рд▓-рдХрд╛рд│реЗ рдЭрд╛рдб рд╣реЗ рдЧреБрдгрдзрд░реНрдорд╛рдВрд╕рд╣ рд╕рдВрддреБрд▓рд┐рдд рдмрд╛рдпрдирд░реА рд╡реГрдХреНрд╖ рдЖрд╣реЗ:
  • рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдПрдХрддрд░ рд▓рд╛рд▓ рдХрд┐рдВрд╡рд╛ рдХрд╛рд│рд╛ рдЕрд╕рддреЛ
  • рдореВрд│ рдиреЗрд╣рдореА рдХрд╛рд│реЗ рдЕрд╕рддреЗ
  • рдкреНрд░рддреНрдпреЗрдХ рдкрд╛рди рдПрдХ NIL (рдПрдХ рдкреНрд░рдХрд╛рд░рдЪрд╛ рд░рд┐рдХрд╛рдорд╛, рд╢реВрдиреНрдп) рдиреЛрдб рдЕрд╕рддреЛ рдЖрдгрд┐ рддреЛ рдХрд╛рд│рд╛ рдЕрд╕рддреЛ
  • рдЬрд░ рдиреЛрдб рд▓рд╛рд▓ рдЕрд╕реЗрд▓ рддрд░ рддреНрдпрд╛рдЪреА рдореБрд▓реЗ рдирдХреНрдХреАрдЪ рдХрд╛рд│реА рдЕрд╕рддрд╛рдд.
  • рдиреЛрдбрдкрд╛рд╕реВрди рд╡рдВрд╢рдЬ рдкрд╛рдирд╛рдкрд░реНрдпрдВрддрдЪреНрдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рд╕реЛрдкреНрдпрд╛ рдорд╛рд░реНрдЧрд╛рдордзреНрдпреЗ рд╕рдорд╛рди рд╕рдВрдЦреНрдпреЗрдиреЗ рдХрд╛рд│реНрдпрд╛ рдиреЛрдбреНрд╕ рдЕрд╕рддрд╛рдд.

рдЯреНрд░реАрдореЕрдк рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ

рдЯреНрд░реАрдореЕрдк рдХреА рдиреЛрдбреНрд╕ рдореНрд╣рдгреВрди рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЯреНрд░реА рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░рдХреНрдЪрд░ рд╡рд╛рдкрд░рддреЗ рдЖрдгрд┐ рд░реЗрдб-рдмреНрд▓реЕрдХ рдЯреНрд░реА рдЕрд▓реНрдЧреЛрд░рд┐рджрдо рд╡рд╛рдкрд░реВрди рдХреА рдХреНрд░рдорд╡рд╛рд░реА рд▓рд╛рд╡рддреЗ. рддреНрдпрд╛рдореБрд│реЗ, TreeMap рддреНрдпрд╛рдЪреНрдпрд╛ рдиреЛрдВрджреА рддреНрдпрд╛рдЪреНрдпрд╛ рдХреАрдЪреНрдпрд╛ рдиреИрд╕рд░реНрдЧрд┐рдХ рдХреНрд░рдорд╛рдиреБрд╕рд╛рд░ рдХреНрд░рдорд╡рд╛рд░реАрдд рдареЗрд╡рддреЗ. рд╕рдВрдЦреНрдпрд╛рдВрд╕рд╛рдареА рдиреИрд╕рд░реНрдЧрд┐рдХ рдореНрд╣рдгрдЬреЗ рдЪрдврддреНрдпрд╛ рдХреНрд░рдорд╛рдиреЗ, рд╕реНрдЯреНрд░рд┐рдВрдЧрд╕рд╛рдареА - рд╡рд░реНрдгрдХреНрд░рдорд╛рдиреБрд╕рд╛рд░. рддреБрдореНрд╣рд╛рд▓рд╛ рдСрд░реНрдбрд░ рджреЗрдгреНрдпрд╛рдЪреЗ рддрд░реНрдХ рдмрджрд▓рд╛рдпрдЪреЗ рдЕрд╕рд▓реНрдпрд╛рд╕ рддреБрдореНрд╣реА рддреБрд▓рдирд╛рдХрд░реНрддрд╛ рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛. рдиреИрд╕рд░реНрдЧрд┐рдХ рдкрджреНрдзрддреАрдиреЗ рд╡рд╕реНрддреВрдВрдЪреА рдХреНрд░рдорд╡рд╛рд░реА рд▓рд╛рд╡рдгреЗ рд╣рд╛ TreeMap рдЪрд╛ рдПрдХ рдореЛрдард╛ рдлрд╛рдпрджрд╛ рдЖрд╣реЗ, рддрд╕реЗрдЪ рднрд┐рдиреНрди рдлрд┐рд▓реНрдЯрд░ рдЖрдгрд┐ рдкрд░рд┐рд╕реНрдерд┐рддреА рд╡рд╛рдкрд░реВрди рдХрд╛рд╣реА рд╡рд╕реНрддреВ рд╢реЛрдзрдгреЗ рд╣рд╛ рдЖрд╣реЗ.

рдЯреНрд░реАрдореЕрдк рдкрджреНрдзрддреА

  • рдСрдмреНрдЬреЗрдХреНрдЯ рдЧреЗрдЯ(рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА) рд╕рдВрдмрдВрдзрд┐рдд рдХреАрдЪреЗ рдореВрд▓реНрдп рдкрд░рдд рдХрд░рддреЗ;
  • рдСрдмреНрдЬреЗрдХреНрдЯ рдкреБрдЯ (рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА, рдСрдмреНрдЬреЗрдХреНрдЯ рдореВрд▓реНрдп) рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдореЕрдкрд┐рдВрдЧ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рддреЗ;
  • рдСрдмреНрдЬреЗрдХреНрдЯ рд░рд┐рдореВрд╡реНрд╣ (рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА) рдЯреНрд░реАрдореЕрдкрдордзреНрдпреЗ рдЕрд╕рд▓реНрдпрд╛рд╕ рдпрд╛ рдХреАрдЪреЗ рдореЕрдкрд┐рдВрдЧ рдХрд╛рдвреВрди рдЯрд╛рдХрддреЗ;
  • рдЬрд░ рдпрд╛ рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреАрд╕рд╛рдареА рдореЕрдкрд┐рдВрдЧ рдЕрд╕реЗрд▓ рддрд░ рдмреБрд▓рд┐рдпрди containsKey(рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА) рд╕рддреНрдп рджрд░реНрд╢рд╡рддреЗ;
  • рдЬрд░ рдЯреНрд░реАрдореЕрдкрдиреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдореВрд▓реНрдпрд╛рд╕рд╛рдареА рдПрдХ рдХрд┐рдВрд╡рд╛ рдЕрдзрд┐рдХ рдХреА рдореЕрдк рдХреЗрд▓реЗ рддрд░ рдмреБрд▓рд┐рдпрди рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рд╡реНрд╣реЕрд▓реНрдпреВ(рдСрдмреНрдЬреЗрдХреНрдЯ рд╡реНрд╣реЕрд▓реНрдпреВ) рдЦрд░реЗ рдорд┐рд│рд╡рддреЗ;
  • рдСрдмреНрдЬреЗрдХреНрдЯ firstKey() рд╕рдзреНрдпрд╛ рдХреНрд░рдорд╡рд╛рд░реА рдХреЗрд▓реЗрд▓реНрдпрд╛ рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдкрд╣рд┐рд▓реА рдХреА рдкрд░рдд рдХрд░рддреЗ;
  • рдСрдмреНрдЬреЗрдХреНрдЯ lastKey() рд╕рдзреНрдпрд╛ рдХреНрд░рдорд╡рд╛рд░реА рдХреЗрд▓реЗрд▓реНрдпрд╛ рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рд╢реЗрд╡рдЯрдЪреА рдХреА рдкрд░рдд рдХрд░рддреЗ;
  • void putAll(рдирдХрд╛рд╢рд╛ рдирдХрд╛рд╢рд╛) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирдХрд╛рд╢рд╛рд╡рд░реВрди рдирдХрд╛рд╢рд╛рд╡рд░ рд╕рд░реНрд╡ рдореЕрдкрд┐рдВрдЧ рдХреЙрдкреА рдХрд░рддреЗ;
  • Set entrySet() рдореЕрдкрд┐рдВрдЧрдЪреЗ рд╕реЗрдЯ рджреГрд╢реНрдп рдкрд░рдд рдХрд░рддреЗ
  • int size() рдХреА-рд╡реНрд╣реЕрд▓реНрдпреВ рдореЕрдкрд┐рдВрдЧрдЪреЗ рдкреНрд░рдорд╛рдг рдкрд░рдд рдХрд░рддреЗ
  • рдХрд▓реЗрдХреНрд╢рди рд╡реНрд╣реЕрд▓реНрдпреВ() рд╡реНрд╣реЕрд▓реНрдпреВрдЬрдЪреЗ рдХрд▓реЗрдХреНрд╢рди рд╡реНрд╣реНрдпреВ рджреЗрддреЗ
  • рдСрдмреНрдЬреЗрдХреНрдЯ рдХреНрд▓реЛрди() TreeMap рдЪреА рдЙрдерд│ рдкреНрд░рдд рдкрд░рдд рдХрд░рддреЗ
  • void clear() TreeMap рд╡рд░реВрди рд╕рд░реНрд╡ рдореЕрдкрд┐рдВрдЧ рдХрд╛рдвреВрди рдЯрд╛рдХрддреЗ
  • рд╕реЙрд░реНрдЯреЗрдбрдореЕрдк рд╣реЗрдбрдореЕрдк(рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА_рд╡реНрд╣реЕрд▓реНрдпреВ) рдкреЕрд░рд╛рдореАрдЯрд░ key_value рдкреЗрдХреНрд╖рд╛ рдХрдореА рдирдХрд╛рд╢рд╛рдЪреНрдпрд╛ рднрд╛рдЧрд╛рдЪреЗ рджреГрд╢реНрдп рджреЗрддреЗ
  • Set keySet() рдЯреНрд░реАрдореЕрдкрдордзреНтАНрдпреЗ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдХреАрдЬрдЪреЗ рд╕реЗрдЯ рджреГрд╢реНтАНрдп рджреЗрддреЗ
  • рд╕реЙрд░реНрдЯреЗрдбрдореЕрдк рд╕рдмрдореЕрдк(K fromKey, K toKey) рдпрд╛ рдирдХрд╛рд╢рд╛рдЪреНрдпрд╛ рддреНрдпрд╛ рднрд╛рдЧрд╛рдЪреЗ рджреГрд╢реНрдп рджреЗрддреЗ рдЬреНрдпрд╛рдЪреНрдпрд╛ рдХреА рдкрд╛рд╕реВрди рдХреА рдкрд╛рд╕реВрди, рд╕рд░реНрд╡рд╕рдорд╛рд╡реЗрд╢рдХ, toKey рдкрд░реНрдпрдВрдд, рдЕрдирдиреНрдп
  • Object firstKey() TreeMap рд╡рд░реВрди рдкрд╣рд┐рд▓реА рдХреА рдкрд░рдд рдХрд░рддреЗ.

TreeMap рдЙрджрд╛рд╣рд░рдг

import java.util.TreeMap;
import java.util.Set;
import java.util.Iterator;
import java.util.Map;

public class TreeMapExample {

   public static void main(String args[]) {

       //TreeMap declaration
       TreeMap<Integer, String> myTreeMap = new TreeMap<Integer, String>();

       //put elements to TreeMap
       myTreeMap.put(1, "Stuart");
       myTreeMap.put(23, "Michael");
       myTreeMap.put(7, "Johnny");
       myTreeMap.put(5, "Ivy");
       myTreeMap.put(2, "Alex");

       //Display and print out myTreeMap using Iterator
       Set set = myTreeMap.entrySet();
       Iterator iterator = set.iterator();
       while (iterator.hasNext()) {
           Map.Entry myEntry = (Map.Entry) iterator.next();
           System.out.print("key: " + myEntry.getKey() + " value: ");
           System.out.println(myEntry.getValue());
       }
       //TreeMap printed in classical way
       System.out.println(myTreeMap);
       //removing an element with the key =2
       myTreeMap.remove(2);
       //myTreeMap after removing:
       System.out.println(myTreeMap);
   }
}
рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪреЗ рдкрд░рд┐рдгрд╛рдо:
key: 1 value: Stuart
key: 2 value: Alex
key: 5 value: Ivy
key: 7 value: Johnny
key: 23 value: Michael
{1=Stuart, 2=Alex, 5=Ivy, 7=Johnny, 23=Michael}
{1=Stuart, 5=Ivy, 7=Johnny, 23=Michael}

LinkedHashMap

LinkedHashMap рд╣реА рдПрдХ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдЖрд╣реЗ рдЬреА рд▓рд┐рдВрдХ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕реВрдЪреА рдЖрдгрд┐ рд╣реЕрд╢ рдирдХрд╛рд╢реЗ рдПрдХрддреНрд░ рдХрд░рддреЗ. рдЦрд░рдВрдЪ, LinkedHashMap рд╣реЕрд╢рдореЕрдк рд╡рд░реНрдЧ рд╡рд╛рдврд╡рддреЗ рдЖрдгрд┐ рдирдХрд╛рд╢рд╛ рдЗрдВрдЯрд░рдлреЗрд╕ рд▓рд╛рдЧреВ рдХрд░рддреЗ, рдкрд░рдВрддреБ рд▓рд┐рдВрдХ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕реВрдЪреАрдмрджреНрджрд▓ рдХрд╛рдп рдЖрд╣реЗ? LinkedHashMap рдЪреА рдШреЛрд╖рдгрд╛:
Map <Integer, String> linkedHashMap = new LinkedHashMap <Integer, String>();
рдпрд╛ рдирд╡реАрди рд▓рд┐рдВрдХреНрдбрд╣реЕрд╢рдореЕрдкрд▓рд╛ рд╣реЕрд╢рдореЕрдк (рдЬрд╕реЗ рдХреА рдЯреЗрдмрд▓, рд▓реЛрдбрдлреЕрдХреНрдЯрд░, рдереНрд░реЗрд╢реЛрд▓реНрдб, рдЖрдХрд╛рд░, рдПрдВрдЯреНрд░реАрд╕реЗрдЯ) рдХрдбреВрди рдЧреБрдгрдзрд░реНрдо рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛рдд, рджреЛрди рд╡рд┐рд╢реЗрд╖ рдЧреБрдгрдзрд░реНрдо рджреЗрдЦреАрд▓ рдорд┐рд│рддрд╛рдд:
  • рд╢реАрд░реНрд╖рд▓реЗрдЦ рд╣реЗ рджреБрд╣реЗрд░реА рд▓рд┐рдВрдХ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕реВрдЪреАрдЪреЗ рдкреНрд░рдореБрдЦ рдЖрд╣реЗ. рдЖрд░рдВрднрд┐рдХрд░рдг рджрд░рдореНрдпрд╛рди, рддреЗ рд╕реНрд╡рддрдГрд▓рд╛ рд╕реВрдЪрд┐рдд рдХрд░рддреЗ
  • рдПрдХреНрд╕реЗрд╕рдСрд░реНрдбрд░ рдЗрдЯрд░реЗрдЯрд░ рд╡рд╛рдкрд░реВрди рдШрдЯрдХрд╛рдВрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд╕рд╛ рдорд┐рд│рд╡рд╛рдпрдЪрд╛ рд╣реЗ рд╕реВрдЪрд┐рдд рдХрд░рддреЗ. рдЦрд░реЗ рдЕрд╕рд▓реНрдпрд╛рд╕, рд╢реЗрд╡рдЯрдЪреНрдпрд╛ рдкреНрд░рд╡реЗрд╢рд╛рдЪреНрдпрд╛ рдХреНрд░рдорд╛рдиреЗ. рдЕрд╕рддреНрдп рдЕрд╕рд▓реНрдпрд╛рд╕, рдШрдЯрдХ рдШрд╛рддрд▓реЗрд▓реНрдпрд╛ рдХреНрд░рдорд╛рдиреЗ рдкреНрд░рд╡реЗрд╢ рдЕрд╕реЗрд▓.
рд╣реА рд▓рд┐рдВрдХ рдХреЗрд▓реЗрд▓реА рдпрд╛рджреА рдкреБрдирд░рд╛рд╡реГрддреНрддреА рдХреНрд░рдо рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ. рд╕рд╣рд╕рд╛, рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдХреА рдШрд╛рд▓рдгреНрдпрд╛рдЪрд╛ рдХреНрд░рдо рдЕрд╕рддреЛ.

LinkedHashMap рдкрджреНрдзрддреА

  • рдСрдмреНрдЬреЗрдХреНрдЯ рдЧреЗрдЯ(рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреА рдореЕрдк рдХреЗрд▓реЗрд▓реЗ рдореВрд▓реНрдп рдкрд░рдд рдХрд░рддреЗ рдХрд┐рдВрд╡рд╛ рдпрд╛ рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдХреАрд╕рд╛рдареА рдХреЛрдгрддреЗрд╣реА рдореЕрдкрд┐рдВрдЧ рдирд╕рд▓реНрдпрд╛рд╕ рд╢реВрдиреНрдп
  • void clear() рдирдХрд╛рд╢рд╛рд╡рд░реВрди рд╕рд░реНрд╡ рдореЕрдкрд┐рдВрдЧ рдХрд╛рдвреВрди рдЯрд╛рдХрддреЗ.
  • рдЬрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдШрдЯрдХ рдПрдХ рдХрд┐рдВрд╡рд╛ рдЕрдзрд┐рдХ рдХреА рджреНрд╡рд╛рд░реЗ рдореЕрдк рдХреЗрд▓рд╛ рдЕрд╕реЗрд▓ рддрд░ рдмреВрд▓рд┐рдпрди рд╕рдорд╛рд╡реЗрд╢рдХреА(рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА) рд╕рддреНрдп рдорд┐рд│рд╡рддреЗ
  • рдмреВрд▓рд┐рдпрди рд░рд┐рдореВрд╡реНрд╣рдПрд▓реНрдбреЗрд╕реНрдЯ рдПрдВрдЯреНрд░реА(рдореЕрдк.рдПрдиреНрдЯреНрд░реА рдПрд▓реНрдбреЗрд╕реНрдЯ) рдЬрд░ рдирдХрд╛рд╢рд╛рдиреЗ рддреНрдпрд╛рдЪреА рд╕рд░реНрд╡рд╛рдд рдЬреБрдиреА рдПрдВрдЯреНрд░реА рдирдХрд╛рд╢рд╛рд╡рд░реВрди рдХрд╛рдвреВрди рдЯрд╛рдХрд▓реА рддрд░ рддреА рд╕рддреНрдп рдкрд░рдд рдпреЗрдИрд▓
  • Set<Map.Entry<K,V>> entrySet() рдпрд╛ рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдореЕрдкрд┐рдВрдЧрдЪреЗ рд╕реЗрдЯ рд╡реНрд╣реНрдпреВ рджреЗрддреЗ
  • void forEach(BiConsumer<? super K,? super V> action) рдпрд╛ рдирдХрд╛рд╢рд╛рддреАрд▓ рдкреНрд░рддреНрдпреЗрдХ рдПрдВрдЯреНрд░реАрд╕рд╛рдареА рджрд┐рд▓реЗрд▓реА рдХреНрд░рд┐рдпрд╛ рд╕рд░реНрд╡ рдиреЛрдВрджреАрдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реЛрдИрдкрд░реНрдпрдВрдд рдХрд┐рдВрд╡рд╛ рдХреГрддреА рдЕрдкрд╡рд╛рдж рдХрд░рдд рдирд╛рд╣реА рддреЛрдкрд░реНрдпрдВрдд рдХрд░рддреЗ.
  • рдСрдмреНрдЬреЗрдХреНрдЯ getOrDefault(рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА, V defaultValue) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреА рдореЕрдк рдХреЗрд▓реЗрд▓реЗ рдореВрд▓реНрдп рдкрд░рдд рдХрд░рддреЗ. рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рдХреА рд╕рд╛рдареА рдореЕрдкрд┐рдВрдЧ рдирд╕рд▓реНрдпрд╛рд╕ рдбреАрдлреЙрд▓реНрдЯ рд╡реНрд╣реЕрд▓реНрдпреВ рдорд┐рд│рддреЗ.
  • Set<K> keySet() рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдХрд│рд╛рдВрдЪреЗ рд╕реЗрдЯ рджреГрд╢реНрдп рдкрд░рдд рдХрд░рддреЗ
  • рдмреБрд▓рд┐рдпрди рд░рд┐рдореВрд╡реНрд╣рдПрд▓реНрдбреЗрд╕реНрдЯ рдПрдВрдЯреНрд░реА(рдореЕрдк.рдПрдВрдЯреНрд░реА<рдХреЗ,рд╡реА> рд╕рд░реНрд╡рд╛рдд рдЬреБрдиреА) рдЬрд░ рдпрд╛ рдирдХрд╛рд╢рд╛рдиреЗ рддреНрдпрд╛рдЪреА рд╕рд░реНрд╡рд╛рдд рдЬреБрдиреА рдПрдВрдЯреНрд░реА рдХрд╛рдвреВрди рдЯрд╛рдХрд▓реА рдЕрд╕реЗрд▓ рддрд░ рддреА рд╕рддреНрдп рджрд░реНрд╢рд╡рддреЗ
  • void replaceAll(BiFunction<? super K,? super V,? extends V> function) рдкреНрд░рддреНрдпреЗрдХ рдПрдВрдЯреНрд░реА рд╡реНрд╣реЕрд▓реНрдпреВрд▓рд╛ рддреНрдпрд╛ рдПрдВрдЯреНрд░реАрд╡рд░ рджрд┐рд▓реЗрд▓реЗ рдлрдВрдХреНрд╢рди рдЗрдирд╡реНрд╣реЙрдИрдВрдЧ рдХреЗрд▓реНрдпрд╛рдореБрд│реЗ рд╕рд░реНрд╡ рдПрдВрдЯреНрд░реАрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реЛрдИрдкрд░реНрдпрдВрдд рдХрд┐рдВрд╡рд╛ рдлрдВрдХреНрд╢рдирдиреЗ рдЕрдкрд╡рд╛рдж рдлреЗрдХреВрди рджрд┐рд▓реЗрд▓рд╛ рдкрд░рд┐рдгрд╛рдо рдмрджрд▓рддреЛ.
  • рд╕рдВрдХрд▓рди<v>values() рдирдХрд╛рд╢рд╛рдордзреНрдпреЗ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдореВрд▓реНрдпрд╛рдВрдЪреЗ рд╕рдВрдХрд▓рди рджреГрд╢реНрдп рджреЗрддреЗ

LinkedHashMap рдЙрджрд╛рд╣рд░рдг

import java.util.LinkedHashMap;
import java.util.Set;
import java.util.Iterator;
import java.util.Map;
   public class HashLinkedListExample {
       public static void main(String args[]) {
           // LinkedHashMap Declaration
           LinkedHashMap<Integer, String> myLinkedHashMap =
                   new LinkedHashMap<Integer, String>();

           //Adding elements into LinkedHashMap
           myLinkedHashMap.put(7, "Johnny");
           myLinkedHashMap.put(12, "Rick");
           myLinkedHashMap.put(1, "Kyle");
           myLinkedHashMap.put(5, "Percy");
           myLinkedHashMap.put(85, "Sebastian");

           // Generate a Set of entries
           Set set = myLinkedHashMap.entrySet();

           // Display and print out the nodes  of LinkedHashMap
           Iterator iterator = set.iterator();
           while(iterator.hasNext()) {
               Map.Entry me = (Map.Entry)iterator.next();
               System.out.print("key: "+ me.getKey() +
                       " value: "+me.getValue()+"\n");
           }
           //print out HashLinkedMap on standard way:
           System.out.println(myLinkedHashMap);
           myLinkedHashMap.put(21, "Ivy");
           System.out.println(myLinkedHashMap);
           myLinkedHashMap.remove(12);
           System.out.println(myLinkedHashMap);
           myLinkedHashMap.put(12, "Ronny");
           System.out.println(myLinkedHashMap);
           myLinkedHashMap.put(1, "Stan");
           System.out.println(myLinkedHashMap);
       }
   }
рдпреЗрдереЗ рдЖрдкрдг рдкрд╛рдЪ рдШрдЯрдХ рдЬреЛрдбреВрди рдПрдХ рдирд╡реАрди LinkedHashMap рддрдпрд╛рд░ рдХрд░рддреЛ, рдирдВрддрд░ рдкреБрдирд░рд╛рд╡реГрддреНрддреАрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░реВрди рдЖрдгрд┐ рд╢рд╛рд╕реНрддреНрд░реАрдп рдкрджреНрдзрддреАрдиреЗ рдкреНрд░рд┐рдВрдЯ рдХрд░рддреЛ. рдЬрд╕реЗ рддреБрдореНрд╣реА рдмрдШреВ рд╢рдХрддрд╛, LinkedHashMap рдЗрдиреНрд╕рд░реНрд╢рди рдСрд░реНрдбрд░ рд░рд╛рдЦрддреЗ. рддреНрдпрд╛рдирдВрддрд░ рдЖрдореНрд╣реА рдЖрдордЪреНрдпрд╛ рдирдХрд╛рд╢рд╛рд╡рд░реВрди рдПрдХ рдШрдЯрдХ рд╣рдЯрд╡рддреЛ, рдирдВрддрд░ рдирд╡реАрди рдЬреЛрдбрд╛ рдЖрдгрд┐ рдирдВрддрд░ - рдХреАрд╕рд╣ рдЖрдгрдЦреА рдПрдХ рдШрдЯрдХ, рдЬреЛ рдЖрдзреАрдкрд╛рд╕реВрди рдирдХрд╛рд╢рд╛рд╡рд░ рдЖрд╣реЗ. рддреЗ рдпрд╛ рдХреАрд╡рд░ рдореЕрдк рдХреЗрд▓реЗрд▓реЗ рдЬреБрдиреЗ рдореВрд▓реНрдп рдмрджрд▓рддреЗ. рдЪрд╛рд▓реВ рдХрд╛рд░реНрдпрдХреНрд░рдорд╛рдЪрд╛ рдкрд░рд┐рдгрд╛рдо:
key: 7 value: Johnny
key: 12 value: Rick
key: 1 value: Kyle
key: 5 value: Percy
key: 85 value: Sebastian
{7=Johnny, 12=Rick, 1=Kyle, 5=Percy, 85=Sebastian}
{7=Johnny, 12=Rick, 1=Kyle, 5=Percy, 85=Sebastian, 21=Ivy}
{7=Johnny, 1=Kyle, 5=Percy, 85=Sebastian, 21=Ivy}
{7=Johnny, 1=Kyle, 5=Percy, 85=Sebastian, 21=Ivy, 12=Ronny}
{7=Johnny, 1=Stan, 5=Percy, 85=Sebastian, 21=Ivy, 12=Ronny}

рд╣реЕрд╢рдореЕрдк, рдЯреНрд░реАрдореЕрдк, рд▓рд┐рдВрдХреНрдбрд╣реЕрд╢рдореЕрдк рддреБрд▓рдирд╛

рд╣реЕрд╢рдореЕрдк, рдЯреНрд░реАрдореЕрдк рдЖрдгрд┐ рд▓рд┐рдВрдХреНрдбрд╣реЕрд╢рдореЕрдк рд╣реЗ рдореЕрдк рдЗрдВрдЯрд░рдлреЗрд╕рдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЖрд╣реЗрдд. рд╣реЕрд╢рдореЕрдк рдЖрдгрд┐ рд▓рд┐рдВрдХреНрдбрд╣реЕрд╢рдореЕрдк рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░рдХреНрдЪрд░реНрд╕ рдЖрд╣реЗрдд рдЬреНрдпрд╛ рдХреА рд╣реЕрд╢ рдХрд░рддрд╛рдд. рд╢реЛрдз рд╡реГрдХреНрд╖ рдЖрдпреЛрдЬрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА TreeMap рддреНрдпрд╛рдЪреНрдпрд╛ рдХреА рдЪрд╛ рдиреИрд╕рд░реНрдЧрд┐рдХ рдХреНрд░рдо рд╡рд╛рдкрд░рддреЛ. рдСрд░реНрдбрд░:
  • рд╣реЕрд╢рдореЕрдк рдХреЛрдгрддрд╛рд╣реА рдХреНрд░рдо рд░рд╛рдЦрдд рдирд╛рд╣реА.
  • рдЯреНрд░реАрдореЕрдк рдХреАрдЬрдЪреНрдпрд╛ рдЪрдврддреНрдпрд╛ рдХреНрд░рдорд╛рдиреЗ рдиреЛрдВрджреАрдВрдЪреА рдХреНрд░рдорд╡рд╛рд░реА рд▓рд╛рд╡рддреЗ.
  • LinkedHashMap рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдХреНрд░рдо рд░рд╛рдЦрддреЛ.
рд╢реВрдиреНрдп рдХреА:
  • рд╣реЕрд╢рдореЕрдк рдЖрдгрд┐ рд▓рд┐рдВрдХреНрдбрд╣реЕрд╢рдореЕрдк рдПрдХ рд╢реВрдиреНрдп рдХреА рдареЗрд╡рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддрд╛рдд.
  • рд▓рд┐рдВрдХреНрдбрд╣реЕрд╢рдореЕрдк рдиреЕрдЪрд░рд▓ рдСрд░реНрдбрд░рд┐рдВрдЧ рд╡рд╛рдкрд░рдд рдЕрд╕рд▓реНрдпрд╛рд╕ рдХрд┐рдВрд╡рд╛ рдХрдореНрдкреЕрд░реЗрдЯрд░ рдирд▓ рд▓реАрдЬрд╡рд░ рддреБрд▓рдирд╛ рдХрд░рдгреНрдпрд╛рд╕ рд╕рдорд░реНрдерди рджреЗрдд рдирд╕рд▓реНрдпрд╛рд╕ рдирд▓ рдХреАрд▓рд╛ рдкрд░рд╡рд╛рдирдЧреА рджреЗрдд тАЛтАЛрдирд╛рд╣реА.
рдпрд╛ рд▓реЗрдЦрд╛рдд рдкреБрдирд░рд╛рд╡рд▓реЛрдХрди рдХреЗрд▓реЗрд▓реНрдпрд╛ рддреАрдирд╣реА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдЪрд╛ рд╕рдорд╛рд╡реЗрд╢ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ Java рдирдХрд╛рд╢рд╛рдЪреЗ рдЙрджрд╛рд╣рд░рдг рдШреЗрдКрдпрд╛:
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.TreeMap;

public class CompMapImpl {


    public static void main(String[] args) {
        HashMap<Integer, String> hashMap = new HashMap<>();
        TreeMap<Integer, String> treeMap = new TreeMap<>();
        LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
        hashMap.put(5, "Ivy");
        hashMap.put(null, "Joker");
        hashMap.put(1, "First");
        hashMap.put(2, "Kyle");
        hashMap.put(-2, "Paul");
        hashMap.put(3, "Sandy");


        treeMap.put(5, "Ivy");
        //treeMap.put(null,"Joker");
        treeMap.put(1, "First");
        treeMap.put(2, "Kyle");
        treeMap.put(-2, "Paul");
        treeMap.put(3, "Sandy");

        linkedHashMap.put(5, "Ivy");
        linkedHashMap.put(null, "Joker");
        linkedHashMap.put(1, "First");
        linkedHashMap.put(2, "Kyle");
        linkedHashMap.put(-2, "Paul");
        linkedHashMap.put(3, "Sandy");
        System.out.println("HashMap");
        System.out.println(hashMap);
        System.out.println("TreeMap");
        System.out.println(treeMap);
        System.out.println("LinkedHashMap");
        System.out.println(linkedHashMap);


        LinkedHashMap<String, String> linkedHashMap1= new LinkedHashMap<> ();
        linkedHashMap1.put(null, "Andy");
        System.out.println(linkedHashMap1);
    }
}
рд╣рд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪрд╛ рдкрд░рд┐рдгрд╛рдо рдпреЗрдереЗ рдЖрд╣реЗ:
HashMap
{null=Joker, 1=First, -2=Paul, 2=Kyle, 3=Sandy, 5=Ivy}
TreeMap
{-2=Paul, 1=First, 2=Kyle, 3=Sandy, 5=Ivy}
LinkedHashMap
{5=Ivy, null=Joker, 1=First, 2=Kyle, -2=Paul, 3=Sandy}
{null=Andy}
рдЬрд╕реЗ рдЖрдкрдг рдкрд╛рд╣реВ рд╢рдХрддреЛ, рд╣реЕрд╢рдореЕрдкрдордзреАрд▓ рдШрдЯрдХрд╛рдВрдЪрд╛ рдХреНрд░рдо рд╕реНрдкрд╖реНрдЯ рдирд╛рд╣реА, рдЯреНрд░реАрдореЕрдкрдордзреНрдпреЗ рддреЗ рдХреАрдЬрд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдЕрд╕рддреЗ, рд▓рд┐рдВрдХреНрдбрд╣реЕрд╢рдореЕрдкрдордзреНрдпреЗ рддреЗ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдХреНрд░рдорд╛рдмрджреНрджрд▓ рдЕрд╕рддреЗ. рдЬрд░ рдЖрдкрдг linkedHashMap рдордзреНрдпреЗ null key рдЯрд╛рдХрдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХреЗрд▓рд╛ рддрд░ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ NullPointerException рдорд┐рд│реЗрд▓, рдкрдг linkedHashMap1 рдордзреНрдпреЗ, рдЬрд┐рдереЗ рдХреА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЖрд╣реЗрдд, рдЖрдкрдг рддреЗ рдХрд░реВ рд╢рдХрддреЛ. рд╣реЕрд╢ рдирдХрд╛рд╢рд╛ рд╣реА рд╕рд░реНрд╡реЛрддреНрддрдо рд╕рд╛рдорд╛рдиреНрдп-рдЙрджреНрджреЗрд╢ рдирдХрд╛рд╢рд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЖрд╣реЗ. рд╣реЗ рдЬрд╛рд╕реНрддреАрдд рдЬрд╛рд╕реНрдд рд╢реЛрдз рдЧрддреА, рдЬрд▓рдж рд╕реНрдЯреЛрд░реЗрдЬ рдЖрдгрд┐ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддреА рдСрдкрд░реЗрд╢рдиреНрд╕ рдкреНрд░рджрд╛рди рдХрд░рддреЗ, рдкрд░рдВрддреБ рддреБрдореНрд╣реА рддреНрдпрд╛рдЪреНрдпрд╛ рдЧреЛрдВрдзрд│рд▓реЗрд▓реНрдпрд╛ рдХреНрд░рдорд╛рдмрджреНрджрд▓ рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рд╛рд╡реЗ. рд▓рд┐рдВрдХ рдХреЗрд▓реЗрд▓рд╛ рд╣реЕрд╢ рдореЕрдк рд╣реЕрд╢рдореЕрдк рдлрд╛рдпрджреЗ рдорд┐рд│рд╡рддреЛ рдЖрдгрд┐ рдХреА рд╕рд╛рдареА рдСрд░реНрдбрд░ рдорд┐рд│рд╡рддреЛ. рддрдерд╛рдкрд┐, рддреНрдпрд╛рдд рд▓рд┐рдВрдХреНрдбрд▓рд┐рд╕реНрдЯ рдЖрд╣реЗ, рдЬреА рдореЗрдорд░реАрдЪреНрдпрд╛ рджреГрд╖реНрдЯреАрдиреЗ рддреБрд▓рдиреЗрдиреЗ рдорд╣рд╛рдЧ рдЖрд╣реЗ. рд╣реЗ рд╣реЕрд╢рдореЕрдк рдкреЗрдХреНрд╖рд╛ рдзреАрдореЗ рдЖрд╣реЗ рдЖрдгрд┐ рд▓рд┐рдВрдХреНрдб рд▓рд┐рд╕реНрдЯ рдХрд╛рдпрдо рдареЗрд╡рд▓реНрдпрд╛рдореБрд│реЗ рдЬреЛрдбрд╛/рдХрд╛рдврдгреНрдпрд╛рд╕рд╛рдареА рдереЛрдбрд╛ рдзреАрдорд╛ рдЖрд╣реЗ. рдЭрд╛рдбрд╛рдЪрд╛ рдирдХрд╛рд╢рд╛ рдЪрдврддреНрдпрд╛ рдХреНрд░рдорд╛рдиреЗ рд▓рд╛рд╡рд▓реЗрд▓реНрдпрд╛ рдХрд│ рд╕рд╛рдард╡рддреЛ. рддрдерд╛рдкрд┐, рддреБрдореНрд╣реА рдЬреЗ рд╢рд┐рдХрд▓рд╛рдд рддреЗ рдмрд│рдХрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рддреБрдореНрд╣рд╛рд▓рд╛ рдЖрдордЪреНрдпрд╛ Java рдХреЛрд░реНрд╕рдордзреАрд▓ рд╡реНрд╣рд┐рдбрд┐рдУ рдзрдбрд╛ рдкрд╛рд╣рдгреНрдпрд╛рдЪрд╛ рд╕рд▓реНрд▓рд╛ рджреЗрддреЛ
рдЯрд┐рдкреНрдкрдгреНрдпрд╛
  • рд▓реЛрдХрдкреНрд░рд┐рдп
  • рдирд╡реАрди
  • рдЬреБрдиреЗ
рдЯрд┐рдкреНрдкрдгреА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддреБрдореНрд╣реА рд╕рд╛рдИрди рдЗрди рдХреЗрд▓реЗрд▓реЗ рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ
рдпрд╛ рдкрд╛рдирд╛рд╡рд░ рдЕрдЬреВрди рдХреЛрдгрддреНрдпрд╛рд╣реА рдЯрд┐рдкреНрдкрдгреНрдпрд╛ рдирд╛рд╣реАрдд