All language subtitles for 023 Polymorphism in Map HashMap vs. TreeMap vs. LinkedHashMap_en

af Afrikaans
ak Akan
sq Albanian
am Amharic
ar Arabic
hy Armenian
az Azerbaijani
eu Basque
be Belarusian
bem Bemba
bn Bengali
bh Bihari
bs Bosnian
br Breton
bg Bulgarian
km Cambodian
ca Catalan
ceb Cebuano
chr Cherokee
ny Chichewa
zh-CN Chinese (Simplified)
zh-TW Chinese (Traditional)
co Corsican
hr Croatian
cs Czech
da Danish
nl Dutch
en English
eo Esperanto
et Estonian
ee Ewe
fo Faroese
tl Filipino
fi Finnish
fr French
fy Frisian
gaa Ga
gl Galician
ka Georgian
de German
el Greek
gn Guarani
gu Gujarati
ht Haitian Creole
ha Hausa
haw Hawaiian
iw Hebrew
hi Hindi
hmn Hmong
hu Hungarian Download
is Icelandic
ig Igbo
id Indonesian
ia Interlingua
ga Irish
it Italian
ja Japanese
jw Javanese
kn Kannada
kk Kazakh
rw Kinyarwanda
rn Kirundi
kg Kongo
ko Korean
kri Krio (Sierra Leone)
ku Kurdish
ckb Kurdish (Soranî)
ky Kyrgyz
lo Laothian
la Latin
lv Latvian
ln Lingala
lt Lithuanian
loz Lozi
lg Luganda
ach Luo
lb Luxembourgish
mk Macedonian
mg Malagasy
ms Malay
ml Malayalam
mt Maltese
mi Maori
mr Marathi
mfe Mauritian Creole
mo Moldavian
mn Mongolian
my Myanmar (Burmese)
sr-ME Montenegrin
ne Nepali
pcm Nigerian Pidgin
nso Northern Sotho
no Norwegian
nn Norwegian (Nynorsk)
oc Occitan
or Oriya
om Oromo
ps Pashto
fa Persian
pl Polish
pt-BR Portuguese (Brazil)
pt Portuguese (Portugal)
pa Punjabi
qu Quechua
ro Romanian
rm Romansh
nyn Runyakitara
ru Russian
sm Samoan
gd Scots Gaelic
sr Serbian
sh Serbo-Croatian
st Sesotho
tn Setswana
crs Seychellois Creole
sn Shona
sd Sindhi
si Sinhalese
sk Slovak
sl Slovenian
so Somali
es Spanish
es-419 Spanish (Latin American)
su Sundanese
sw Swahili
sv Swedish
tg Tajik
ta Tamil
tt Tatar
te Telugu
th Thai
ti Tigrinya
to Tonga
lua Tshiluba
tum Tumbuka
tr Turkish
tk Turkmen
tw Twi
ug Uighur
uk Ukrainian
ur Urdu
uz Uzbek
vi Vietnamese
cy Welsh
wo Wolof
xh Xhosa
yi Yiddish
yo Yoruba
zu Zulu
Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated: 1 00:00:00,650 --> 00:00:03,530 There are collection types that implement the map interface. 2 00:00:03,890 --> 00:00:07,400 For example, a hash map directly implements the map interface. 3 00:00:08,660 --> 00:00:13,430 Linked to hash map as a child class of hash map, which implements the map interface. 4 00:00:15,920 --> 00:00:21,320 Tree map implements these sort map interface, which in turn implements the map interface. 5 00:00:21,620 --> 00:00:27,560 So one way or another, all three classes implement the map interface, whether it's directly or indirectly. 6 00:00:30,000 --> 00:00:33,120 In this lesson, you're in a see polymorphism from the lens of map. 7 00:00:36,470 --> 00:00:40,430 Open the folder for this lesson by following this path in your course resources. 8 00:00:45,990 --> 00:00:50,740 In our map is an interface defines methods that a class must implement. 9 00:00:52,720 --> 00:00:58,390 The hash map class implements this interface, it also implement a bunch of other interfaces, but namely 10 00:00:58,390 --> 00:00:58,840 map. 11 00:01:01,980 --> 00:01:04,290 Here are some of the methods that map the phones. 12 00:01:04,440 --> 00:01:10,680 Once again, the familiar sighs method hash map implements the interface, so we know the hash map class 13 00:01:10,680 --> 00:01:11,970 overrides this method. 14 00:01:12,480 --> 00:01:14,880 You can go back here and call size from the hash map. 15 00:01:22,810 --> 00:01:26,620 Here is another one is empty, and it follows that we can call is empty. 16 00:01:34,620 --> 00:01:40,320 Contains key, and so we know hash map already overrides contains key, which we can use to check for 17 00:01:40,320 --> 00:01:41,280 a particular key. 18 00:01:47,260 --> 00:01:53,710 Anyways, the hash map class implements this interface, so it's basically signing a contract that it's 19 00:01:53,710 --> 00:01:56,860 going to override all of the methods inside the interface. 20 00:01:57,100 --> 00:01:57,820 And it does. 21 00:01:58,480 --> 00:02:03,970 For example, we know our hash map is going to be forced to override or remove books that remove. 22 00:02:09,250 --> 00:02:09,940 And yeah. 23 00:02:13,500 --> 00:02:17,340 So a separate hash map from link to hash map and tree map. 24 00:02:18,030 --> 00:02:22,380 The most striking difference is that hash map has no order length. 25 00:02:22,380 --> 00:02:24,960 Hash map and tree map do follow in order. 26 00:02:31,510 --> 00:02:35,440 If you print the hash map, you'll notice that they appear in a random order. 27 00:02:58,160 --> 00:03:02,060 Tree map entries are sorted according to the compare to method. 28 00:03:05,740 --> 00:03:11,290 Based on the book classes compared to Method, we can expect tree map to sort its entries from lowest 29 00:03:11,290 --> 00:03:12,370 the highest price. 30 00:03:14,400 --> 00:03:16,380 So declare this as a true map instead. 31 00:03:36,130 --> 00:03:42,310 And check it out, all of the entries inside the tree map are sorted from lowest to highest price. 32 00:03:46,530 --> 00:03:50,880 Now for a link to hash map, the entries appear according to their insertion order. 33 00:03:54,540 --> 00:03:56,700 If I declare this as a linked hash map. 34 00:04:04,550 --> 00:04:05,420 And run the app. 35 00:04:10,500 --> 00:04:14,190 The entries appear according to the order that you inserted them in. 36 00:04:17,250 --> 00:04:22,170 So tree map and link to hash map, follow and order hash map doesn't have an order. 37 00:04:25,180 --> 00:04:27,100 Here I can convert this to a key set. 38 00:04:29,640 --> 00:04:30,660 And to an array. 39 00:04:31,950 --> 00:04:33,690 And grabbed the object index to. 40 00:04:36,220 --> 00:04:38,380 And I know it's going to be Game of Thrones. 41 00:04:51,750 --> 00:04:53,400 If I make this into a tree map. 42 00:04:59,900 --> 00:05:04,610 I know in next two is going to return Harry Potter, because that's the way it's going to be sorted. 43 00:05:14,320 --> 00:05:15,790 But if we use a hash map. 44 00:05:24,050 --> 00:05:28,760 I have no idea what in next two is going to give me because everything is going to be out of order. 45 00:05:28,790 --> 00:05:29,420 Random. 46 00:05:31,270 --> 00:05:35,260 So when do you use a map, when there is parity between data? 47 00:05:37,930 --> 00:05:40,240 But specifically, when do we use a hash map? 48 00:05:40,600 --> 00:05:44,920 If you don't care about order, use a hash map because it offers the best performance. 49 00:05:47,680 --> 00:05:52,420 Use a tree map if you need the entries to be sorted, according to what you specify. 50 00:05:55,590 --> 00:06:00,810 Use a linked hash map if you need the entries to be sorted according to their insertion order. 51 00:06:03,060 --> 00:06:07,710 Now, it's worth noting that I always use hash mark because it offers the best performance out of the 52 00:06:07,710 --> 00:06:10,770 three, and it's quite rare that indeed the entries to be sorted. 53 00:06:11,010 --> 00:06:13,740 And in this course, we're probably going to keep using hash map. 54 00:06:18,570 --> 00:06:23,760 Now, it's interesting, as you remember, that interfaces allow for polymorphism, why is polymorphism 55 00:06:23,760 --> 00:06:26,330 important, as always, flexibility. 56 00:06:30,560 --> 00:06:33,140 In this case, print map expects a map. 57 00:06:34,070 --> 00:06:37,790 And our hash map can take the form of a map so we can directly pass it in. 58 00:06:39,290 --> 00:06:42,320 We can even go a step further and declare this as type map. 59 00:06:44,830 --> 00:06:47,380 And even here, I can define this as a trauma. 60 00:06:48,070 --> 00:06:53,290 And what I have to change anything because I know Trump can take the form of map once again. 61 00:06:53,290 --> 00:06:57,190 I can define this as a linked hash map and everything should still work. 62 00:06:57,940 --> 00:07:04,210 So once again, we see that polymorphism helps make our code reusable because all three of our collections 63 00:07:04,210 --> 00:07:05,800 share one common form. 64 00:07:10,170 --> 00:07:13,380 Use a map collection when there is parity between data. 65 00:07:15,000 --> 00:07:20,670 We can drill further and say, use a hash map if you don't care about order because it offers the best 66 00:07:20,670 --> 00:07:21,510 performance. 67 00:07:23,810 --> 00:07:28,280 Use a tree map if you need the entries to be sorted, according to what you specify. 68 00:07:28,880 --> 00:07:34,310 Use a linked hash map if you need the entries to be sorted according to their insertion order. 69 00:07:36,790 --> 00:07:41,740 In this course, we're likely going to keep using hash map because it offers the best performance out 70 00:07:41,740 --> 00:07:45,580 of the three, and it's not common that we're going to need the entries to be sorted. 7132

Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.