Set Set ham To’plam, u o’zida dublikat elementlarni saqlamaydi. Set’dan asosiy 3 ta klass implement oladi ular: HashSet, TreeSet, va LinkedHashSet, HashSet elementlarni hashlab hash jadvaliga yig’adi. Treeset elementlarni daraxtsimon va saralangan holda saqlaydi saqlaydi.
Setdan implement qiladigan klasslar
HashSet
LinkedHashSet
TreeSet
Map Map key (kalit qiymati) ham value(kalitga mos qiymat)i ham obyekt bo’lgan collection’dir. U o’zida dublikat(takrorlangan) bo’lgan key’larni saqlamaydi. Map’dan 3 ta class implement oladi HashMap, TreeMap, va LinkedHashMap. HashMap : elementlarni hashlab yozadi, TreeMap : elementlarni qiymati(value) asosida saralab yozadi.
Mapdan implement oladigan klasslar
HashMap
TreeMap
LinkedHashMap
Iterator/ListIterator Iterator va ListIteratorlardan to’plamlarning elementlarini qaytarishda foydalaniladi
To’lamlarninig ba’zi funksiyalari
N
Funksiya nomlari
Ta’rifi
1
public boolean add(Object element)
To’plamga ma’lumot yizishda foydalanilari
2
public boolean addAll(Collection c)
Belgilangan to’plarlarni yozishda ishlailadi
3
public boolean remove(Object element)
To’plamni elementini o’chirishda ishlatiladi
4
public boolean removeAll(Collection c)
Belegilangan to’plarlarni o’chirishda ishlatiladi
5
public boolean retainAll(Collection c)
6
public int size()
To’plam elementlar sonini qaytaradi
7
public void clear()
To’plamni elementlarini o’chiradi
8
public boolean contains(Object element)
Element qidirishda ishlatiladi
9
public boolean containsAll(Collection c)
Belgilangan to’plamlarni qidirishda ishlatiladi
10
public Iterator iterator()
Iterator qaytaradi
11
public Object[] toArray()
To’plamni massivga o’giradi
12
public boolean isEmpty()
To’plamni bo’sh yokiy bo’sh emasligiga tekshiradi
13
public boolean equals(Object element)
Ikkita to’plamnibir biri bilan solishtiradi
14
public int hashCode()
To’plamni hash code dagi raqamini qaytaradi
Kompyuterning elektron qurilmalari ishlashning fizik tamoyillari shundan iboratki, kompyuter faqat bir va noldan iborat buyruqlarni — kuchlanishning pasayishi ketma-ketligini, yaʼni mashina kodini idrok eta oladi. Kompyuterlar rivojlanishining dastlabki bosqichida odam kompyuterga tushunarli tilda, mashina kodlarida dasturlar tuzishi kerak edi. Har bir koʻrsatma birliklar va nollarning turli kombinatsiyasi sifatida ifodalangan opkod hamda operand manzillaridan iborat edi. Shunday qilib, protsessor uchun har qanday dastur oʻsha paytda birlar va nollar ketma-ketligi sifatida qaragan.
Keyinchalik kompyuter bilan muloqot qilish amaliyoti shuni koʻrsatdiki, bunday tilni oʻzlashtirish qiyin va noqulaydir. Uni ishlatganda 1 yoki 0 ni notoʻgʻri ketma-ketlikda yozib koʻplab xatolarga yoʻl qoʻyish ehtimoli juda yuqori edi. Dasturni boshqarish juda qiyin boʻlgan. Bundan tashqari, mashina kodlarida dasturlashda kompyuterning ichki tuzilishini, har bir blokning ishlash prinsipini yaxshi bilish kerak edi va bunday tildagi eng yomon narsa shundaki, bu tildagi dasturlar — birlar va nollarning juda uzun ketma-ketligi mashinaga bogʻliq, yaʼni har bir kompyuter uchun oʻz dasturini tuzish kerak edi va mashina kodlarida dasturlash juda koʻp narsa: vaqt, ish va dasturchining eʼtiborini oshirishni talab etardi.
Tez orada mashina kodini yaratish jarayonini avtomatlashtirish mumkinligi maʼlum boʻldi. 1950-yildan boshlab dasturlarni yozish uchun mnemonik til — Assembler tilidan foydalanila boshlandi. Assembler tili mashina kodini inson uchun qulayroq shaklda koʻrsatishga imkon berdi: buyruqlar va bu buyruqlar bajariladigan obyektlarni belgilash uchun buyruqning mohiyatini aks ettiruvchi ikkilik kodlar oʻrniga harflar yoki qisqartirilgan maxsus soʻzlar qoʻllanilgan. Masalan, assembler tilida ikkita raqamni qoʻshish boʻyicha koʻrsatma add soʻzi bilan ifodalanadi, uning mashina kodi 000010 tarzida boʻladi.
Assembler quyi darajadagi dasturlash tilidir. Quyi darajadagi dasturlash tili, bu muayyan turdagi protsessorga yoʻnaltirilgan va uning xususiyatlarini hisobga oladigan dasturlash tili demakdir. Bunday holda, „quyi“ „yomon“ degani emas, balki bu shuni anglatadiki, til operatorlari mashina kodiga yaqin va maxsus protsessor koʻrsatmalariga qaratilgan boʻladi. Assemblar tilining paydo boʻlishi dasturchilarning hayotini sezilarli darajada osonlashtirdi, chunki endi ular koʻzda miltillovchi nollar va birlar oʻrniga oddiy tilga yaqin belgilardan iborat buyruqlar bilan dastur yozishlari mumkin edi. Oʻsha vaqt uchun bu til innovatsiya edi va mashhur edi, chunki u kichik dasturlarni yozishga imkon berardi, bu esa oʻsha davr mashinalari uchun muhim mezon sanalgan.
Ammo u orqali yirik dasturiy taʼminotlar ishlab chiqish murakkabligi boʻlganligi bois uchinchi avlod tillari hisoblanmish yuqori darajadagi tillarning paydo boʻlishiga olib keldi. Ammo assemblerdan foydalanish shu bilan tugamadi, u bugungi kungacha tor doiralarda mashhur boʻlib kelmoqda. Hozirgi vaqtda u dasturlarning alohida qismlarini yozishda yoki baʼzan dasturlarning oʻzini yozishda qoʻllaniladi. Misol tariqasida, drayverlar, oʻyinlar va operatsion tizimlar yuklagichi (bootloader)ni yozishda assemblerga murojaat etiladi. Shuni unutmaslik kerakki, bu til hakerlar orasida ham mashhurdir, chunki bu tilda yozilgan dasturning tezligi yuqori darajadagi dasturlash tilida yozilgan dastur tezligidan ancha yuqori boʻlishidadir. Buning sababi shundaki, assemblerda yozilgan dastur hajmi juda kichik boʻladi. Antivirus ishlab chiquvchilari oʻz dasturlarining baʼzi modullarida assemblerdan ham foydalanadilar[2].