80 internetskih pitanja o kolekcijama Java & Odgovori

Anonim

Evo pitanja za intervju za Java Collections za svježe, ali i za iskusne kandidate da bi dobili posao iz snova.

1) Što je framework u Javi?

Framework je popularna i gotova arhitektura koja sadrži skup klasa i sučelja.

2) Što je okvir za prikupljanje u Javi?

Okvir za prikupljanje je grupiranje klasa i sučelja koje se koristi za pohranu i upravljanje objektima. Pruža razne klase kao što su Vector, ArrayList, HashSet, Stack, itd. Okvir Java Collection također se može koristiti za sučelja kao što su Queue, Set, List itd.

3) Objasnite razred kolekcije

java.util.Collections je klasa koja se sastoji od statičkih metoda koje djeluju na zbirke. Sadrži polimorfne algoritme za rad na zbirkama, "omotima". Ova klasa sadrži metode za algoritme, poput binarnog sortiranja, pretraživanja, miješanja itd.

4) Što je hashCode ()?

HashCode () je metoda koja vraća cjelobrojni hash kôd.

5) Razlikovati ArrayList i Vector u okviru Java kolekcije.

ArrayList Vektor
ArrayList se ne može sinkronizirati. Vektor može biti sinkroniziran.
To nije naslijeđena klasa. To je naslijeđena klasa.
Može povećati svoju veličinu za 50% veličine polja. Svoju veličinu može povećati udvostručavanjem veličine polja.
ArrayList nije siguran u niti. Vector je zaštićen niti.

6) Što je ArrayList u Javi?

ArrayList je struktura podataka koja se može rastezati kako bi se u nju smjestili dodatni elementi i smanjila natrag na manju veličinu kada se elementi uklone. To je vrlo važna struktura podataka korisna u rukovanju dinamičkim ponašanjem elemenata.

7) Razlikovati Iterator i ListIterator

Razlika između Iteratora i ListIteratora je:

Iterator ListIterator
Iterator može prelaziti niz elemenata u smjeru prema naprijed. ListIterator može prelaziti niz elemenata u smjeru unatrag, kao i naprijed.
Može se koristiti u redu čekanja, popisu i skupu. Može se koristiti u Popisu.
Može izvesti samo operaciju uklanjanja. Može provesti operaciju dodavanja, uklanjanja i postavljanja tijekom obilaska zbirke.

8) Koja je razlika između Iteratora i Enumeracije?

Razlika između Iteratora i Enumeracije

Iterator Nabrajanje
Iterator može prelaziti i naslijeđene, ali i ne-naslijeđene elemente. Nabrajanje može preći samo naslijeđene elemente.
Iterator je neuspješan. Popisivanje nije brzo.
Iterator je vrlo usporen u odnosu na Enumeration. Nabrajanje je brzo u usporedbi s Iteratorom.
Iterator može izvršiti operaciju uklanjanja tijekom obilaska zbirke. Popisivanje može izvršiti samo operaciju prijelaza na zbirci.

9) Definirajte BlockingQueue

BlockingQueue je sučelje koje se koristi u Javi i koje može proširiti Red čekanja. Pruža istodobnost u raznim operacijama reda, kao što su pronalaženje, umetanje, brisanje itd.

Red čekanja postaje prazan u trenutku dohvaćanja bilo kojih elemenata. BlockingQueue ne smije sadržavati null elemente. Implementacija ovog reda čekanja nije sigurna u niti.

Sintaksa BlockingQueue je:

public interface BlockingQueue extends Queue  

10) Objasnite metodu poništavanja equals ()

Metoda jednaka koristi se za provjeru sličnosti između dva objekta. U slučaju da programer želi provjeriti objekt na temelju svojstva, tada ga treba nadjačati.

11) Koja je razlika između usporedivog i usporednog?

Razlika između usporedivog i uspoređivača je:

Usporedive Usporednik
Usporedivo nudi metodu compareTo () za sortiranje elemenata u Javi. Usporednik pruža metodu compare () za sortiranje elemenata u Javi.
Usporedivo sučelje prisutno je u paketu java.lang. Sučelje za usporedbu prisutno je u javi. util paket.
Logika sortiranja mora biti u istoj klasi čiji ćete objekt sortirati. Logika sortiranja trebala bi biti u zasebnoj klasi za pisanje različitog sortiranja na temelju različitih atributa objekata.
Klasa čije objekte želite sortirati mora implementirati usporedivo sučelje. Klasa, čije objekte želite razvrstati, ne treba implementirati sučelje usporedbe.
Pruža pojedinačne sekvence sortiranja. Pruža više sljedova za sortiranje.
Ova metoda može sortirati podatke prema prirodnom redoslijedu sortiranja. Ova metoda sortira podatke prema prilagođenom redoslijedu sortiranja.
Utječe na izvornu klasu. tj. stvarna klasa je promijenjena. To ne utječe na izvornu klasu, tj. Stvarna klasa nije promijenjena.
Često se implementira u API pomoću kalendara, klasa omotača, datuma i niza. Primjenjuje se na sortiranje instanci klasa trećih strana.
Sve klase omotača i klasa String implementiraju usporedivo sučelje. Jedine implementirane klase Comparatora su Collator i RuleBasedColator.

12) Objasnite na primjeru jednako ()

Equals () provjerava je li objekt s brojem jednak objektu koji se prosljeđuje kao argument ili ne.

Sintaksa metode equals () je:

public boolean equals(Object o) 

Ova metoda uzima dva parametra 1) bilo koji objekt, 2) povratnu vrijednost. Vraća true ako proslijeđeni argument nije null i ako je objekt sličnog tipa koji ima istu numeričku vrijednost.

Primjer:

import java.lang.Integer;public class Test {public static void main(String args[]) {Integer p = 5;Integer q = 20;Integer r =5;Short s = 5;System.out.println(p.equals(q));System.out.println(p.equals(r));System.out.println(p.equals(s));}}

13) Nabroji prednosti generičkog prikupljanja

Prednosti upotrebe generičke kolekcije su:

  • Ako programeri koriste generičku klasu, ne zahtijevaju slanje tipova.
  • Sigurno je za tip i može se provjeriti u vrijeme sastavljanja.
  • Pruža stabilnost koda otkrivanjem grešaka u vrijeme sastavljanja.

14) Objasnite metodu za pretvaranje ArrayList u Array i Array u ArrayList

Programeri mogu pretvoriti Array u ArrayList pomoću metode asList () klase Arrays. To je statična metoda klase Arrays koja prihvaća objekt List. Sintaksa metode asList () je:

Arrays.asList(item) 

Java programeri mogu pretvoriti ArrayList u objekt List koristeći sintaksu:

List_object.toArray(new String[List_object.size()])

15) Navedite primjer ArrayList

Primjer obrnutog ArrayList-a je:

import java.util.ArrayList;class Test_ArrayList {public static void main(String[] args) {//Creating a generic ArrayListArrayList arlTest = new ArrayList();//Size of arrayListSystem.out.println("Size of ArrayList at creation: " + arlTest.size());//Lets add some elements to itarlTest.add("D");arlTest.add("U");arlTest.add("K");arlTest.add("E");//Recheck the size after adding elementsSystem.out.println("Size of ArrayList after adding elements: " + arlTest.size());//Display all contents of ArrayListSystem.out.println("List of all elements: " + arlTest);//Remove some elements from the listarlTest.remove("D");System.out.println("See contents after removing one element: " + arlTest);//Remove element by indexarlTest.remove(2);System.out.println("See contents after removing element by index: " + arlTest);//Check size after removing elementsSystem.out.println("Size of arrayList after removing elements: " + arlTest.size());System.out.println("List of all elements after removing elements: " + arlTest);//Check if the list contains "K"System.out.println(arlTest.contains("K"));}}

16) Navedite primjer sortiranja niza u padajućem redoslijedu

Primjer sortiranja niza u obmanjujućem redoslijedu je:

package com.guru99;public class SelectionSortAlgo {public static void main(String a[]){int[] myArray = {860,8,200,9};System.out.println("------Before Sort-----");printArray(myArray);selection(myArray);//sorting array using selection sortSystem.out.println("-----After Sort-----");printArray(myArray);}public static void selection(int[] array){for (int i = 0; i < array.length - 1; i++){ System.out.println("Sort Pass Number "+(i+1));int index = i;for (int j = i + 1; j < array.length; j++){System.out.println("Comparing "+ array[index] + " and " + array[j]);if (array[j] < array[index]){System.out.println(array[index] + " is greater than " + array[j] );index = j;}}int smallerNumber = array[index];array[index] = array[i];array[i] = smallerNumber;System.out.println("Swapping Elements: New Array After Swap");printArray(array);}}static void printArray(int[] array){for(int i=0; i < array.length; i++){System.out.print(array[i] + " ");}System.out.println();}}

17) Objasnite osnovna sučelja okvira Java zbirki

Okvir Java kolekcije korijen je hijerarhije kolekcije. Predstavlja skupinu predmeta kao svoje elemente. Programski jezik Java ne omogućuje izravnu implementaciju takvog sučelja.

  • Set: Set je zbirka koja nema duplicirane elemente. Za pohranu elemenata koristi hashtable.
  • Popis: Popis je uređena zbirka koja može sadržavati dvostruke elemente. Omogućuje programerima pristup bilo kojim elementima iz njegove ulazne pošte. Popis je poput niza koji ima dinamičku duljinu.
  • KARTA: To je objekt koji preslikava ključeve u vrijednosti. Ne može sadržavati duplicirane ključeve. Svaki se ključ može preslikati na barem jednu vrijednost.

18) Koje su značajke Java Hashmapa?

Značajke Java Hashmapa su:

  • Vrijednosti se mogu pohraniti na kartu formiranjem para ključ / vrijednost. Vrijednost se može dobiti pomoću ključa prosljeđivanjem ispravnoj metodi.
  • Ako na karti ne postoji nijedan element, izbacit će 'NoSuchElementException'.
  • HashMap pohranjuje samo reference objekata. Zbog toga je nemoguće koristiti primitivne vrste podataka poput double ili int. Umjesto toga upotrijebite klasu omota (poput Integer ili Double).

19) Što je stog?

Stog je posebno područje memorije računala koje pohranjuje privremene varijable stvorene funkcijom. U steku se varijable deklariraju, pohranjuju i inicijaliziraju tijekom izvođenja.

20) Što je povezani popis?

Povezani popis je struktura podataka koja može pohraniti zbirku predmeta. Drugim riječima, povezani se popisi mogu koristiti za pohranu nekoliko objekata iste vrste. Svaka jedinica ili element popisa naziva se čvorom. Čvor na povezanom popisu ima svoje podatke i adresu sljedećeg čvora. To je poput lanca. Povezani popisi koriste se za stvaranje grafikona i stabala.

21) Navedite primjer ArrayList

Primjer ArrayList je:

import java.util.ArrayList;class Test_ArrayList {public static void main(String[] args) {//Creating a generic ArrayListArrayList arlTest = new ArrayList();//Size of arrayListSystem.out.println("Size of ArrayList at creation: " + arlTest.size());//Lets add some elements to itarlTest.add("D");arlTest.add("U");arlTest.add("K");arlTest.add("E");//Recheck the size after adding elementsSystem.out.println("Size of ArrayList after adding elements: " + arlTest.size());//Display all contents of ArrayListSystem.out.println("List of all elements: " + arlTest);//Remove some elements from the listarlTest.remove("D");System.out.println("See contents after removing one element: " + arlTest);//Remove element by indexarlTest.remove(2);System.out.println("See contents after removing element by index: " + arlTest);//Check size after removing elementsSystem.out.println("Size of arrayList after removing elements: " + arlTest.size());System.out.println("List of all elements after removing elements: " + arlTest);//Check if the list contains "K"System.out.println(arlTest.contains("K"));}}

22) Objasnite povezani popis koji podržava Java

Dvije vrste povezanih popisa koje podržava Java su:

  • Popis pojedinačno povezanih: Popis pojedinačno povezanih vrsta je vrsta strukture podataka. Na pojedinačno povezanom popisu svaki čvor na popisu pohranjuje sadržaj čvora i referencu ili pokazivač na sljedeći čvor na popisu. Ne pohranjuje nikakvu referencu ili pokazivač na prethodni čvor.
  • Dvostruko povezani popisi: Dvostruko povezani popisi posebna su vrsta povezanih popisa u kojima se obilaženje elemenata podataka može obaviti u oba smjera. To je omogućeno postojanjem dvije veze u svakom čvoru, jedne koja povezuje sljedeći čvor i druge koja se povezuje s prethodnim čvorom.

23) Objasnite metode koje pruža sučelje reda?

Metode sučelja Java Queue su:

Metoda Opis
logički dodatak (objekt) Umeta navedeni element u Red čekanja. Vraća se istinito u slučaju uspjeha.
logička ponuda (objekt) Ova se metoda koristi za umetanje elementa u Red čekanja.
Ukloni objekt () Dohvaća i uklanja glavu reda.
Anketa objekta () (): Dohvaća i uklanja glavu reda ili vraća nulu u slučaju da je prazna.
Anketa objekta () Dohvaća i uklanja glavu reda ili vraća nulu u slučaju da je prazna.
Element objekta () Dohvaća podatke iz reda čekanja, ali ne uklanja glavu.
Pogled u objekt () Dohvaća podatke iz reda čekanja, ali ne uklanja njegovu glavu ili će u slučaju da je red čekanja red prazan, donijeti nulu.

24) Spomenite metode koje nudi klasa Stack

Važne metode koje nudi klasa Stack su:

  • push (): gurnite predmet u stog.
  • empty (): Ova metoda utvrđuje je li stek prazan ili ne.
  • pop (): Ova metoda okvira za prikupljanje Java uklanja objekt iz stoga.
  • search (): Ova metoda pretražuje stavke u hrpi.
  • peek (): Ova Java metoda gleda objekt steka bez uklanjanja.

25) Definirajte emptySet () u okviru Java zbirki

Metoda emptySet () koja vraća prazan nepromjenjivi skup kad god programeri pokušaju ukloniti null elemente. Skup koji se vraća pomoću emptySet () može se serirati. Sintaksa ove metode je:

javni statički konačni Postavi emptySet ()

26) Razlikovati zbirku od zbirke

Razlika između Zbirke i Zbirke su:

Kolekcija Zbirke
Zbirka je sučelje. Zbirke su klasa.
Predstavlja skupinu objekata kao jedan entitet. Definira razne korisne metode za objekte kolekcije.
Zbirka je korijensko sučelje okvira Java Collection. Zbirke je opća klasa korisnosti.
Ovo sučelje koristi se za izvođenje struktura podataka zbirke. Ova klasa sadrži statičke metode za manipulaciju strukturom podataka.

27) Definirati LinkedHashSet u okviru Java Collection?

LinkedHashSet je podrazred klase nazvan HashSet i implementira postavljeno sučelje. To je dobro uređena verzija HashSet-a koja održava dvostruko povezan Popis u svim svojim elementima.

28) Koja je razlika između brzog i sigurnog?

Neuspješno Neuspješno
Ne dopušta izmjenu zbirke tijekom ponavljanja. Omogućuje izmjenu zbirke tijekom ponavljanja.
Može baciti ConcurrentModificationException Ne može donijeti nikakvu iznimku.
Za prelazak elemenata koristi originalnu kolekciju. Za prelazak elemenata koristi originalnu kopiju kolekcije.
Nema potrebe za dodatnom memorijom. Potrebna je dodatna memorija.

29) Popis prikaza zbirki sučelja karte

Prikazi zbirke sučelja karte su: 1) prikaz skupa ključeva, 2) prikaz skupa vrijednosti i 3) prikaz skupa unosa.

30) Koje su prednosti okvira za prikupljanje u Javi?

Prednosti Collection Framework u Javi su:

  • Okvir za prikupljanje Java nudi visoko učinkovite i djelotvorne strukture podataka koje povećavaju točnost i brzinu programa.
  • Program razvijen s okvirom Java kolekcije jednostavan je za održavanje.
  • Programer može kombinirati klase s drugim vrstama što rezultira povećanom ponovnom upotrebom koda.
  • Okvir Java kolekcije omogućuje programerima da modificiraju primitivne vrste kolekcije onako kako žele.

31) Koji je dobar način za sortiranje objekata Collection u Javi?

Dobar način za razvrstavanje objekata kolekcije Java koristi sučelja Usporediva i Usporedila. Programer može koristiti Collections.sort (), elementi se sortiraju na temelju redoslijeda navedenog u compareTo ().

Kada programer koristi Collections, sort (Comparator), sortira objekte koji ovise o compare () sučelja Comparator.

32) Objasnite Vector u Javi

Vektor je isti kao niz. Sadrži komponente kojima se može pristupiti pomoću vrijednosti indeksa. Vektori mogu sadržavati naslijeđenu metodu koja nije niti dio okvira za prikupljanje.

33) Koja je razlika između Set i Map?

Postavi Karta
Set pripada paketu-java.util. Karta pripada package- java.util.
Može proširiti sučelje za prikupljanje. Ne proširuje sučelje za prikupljanje.
Ne dopušta dvostruke vrijednosti. Omogućuje dvostruke vrijednosti.
Set može sortirati samo jednu null vrijednost. Karta može sortirati više null vrijednosti.

34) Definirajte razred rječnika

Klasa Dictionary je Java klasa koja ima mogućnost pohrane parova ključ / vrijednost.

35) Definirajte EnumSet

java.util.EnumSet je Set implementacija koja se može koristiti s tipovima nabrajanja. EnumSet koji ima sve elemente mora potjecati iz jednog tipa nabrajanja koji je naveden eksplicitno ili implicitno. Nije sinkroniziran i također nisu dopušteni null ključevi. EnumSet pruža metode poput EnumSetof (E prvo, E

… Odmor), complementOf (EnumSet s) i copyOf (Zbirka c).

36) Koja su dva načina za uklanjanje duplikata s ArrayList?

Dva su načina uklanjanja duplikata s ArrayList-a:

  • HashSet: Razvojni programer može koristiti HashSet za uklanjanje dupliciranog elementa s ArrayList-a. Nedostatak je što ne može sačuvati redoslijed umetanja.
  • LinkedHashSet: Programeri također mogu održavati redoslijed umetanja pomoću LinkedHashSet umjesto HashSet.

37) Što je IdentityHashMap?

IdentityHashMap je klasa koja implementira serializabilna, klonirana sučelja, mapu i proširuje klasu AbstractMap. Dizajniran je za slučaj u kojem postoji potreba za semantikom referentne jednakosti.

38) Što je WeakHashMap?

WeakHashMap je implementacija Java Mape. Koristi se za pohranu slabih referenci na svoje ključeve. Sortiranje pomoću ove karte omogućuje prikupljanje para ključ / vrijednost kao smeće. Njegov ključ nije naveden izvan WeakHashMap-a.

39) Koje su metode kako kolekciju učiniti zaštićenom od niti?

Metode za osiguranje sigurnosti niti za prikupljanje su:

  • Collections.synchronizedList (popis);
  • Collections.synchronizedMap (karta);
  • Collections.synchronizedSet (set);

40) Objasnite UnsupportedOperationException

UnsupportedOperationException je iznimka koja se baca na metode koje nisu podržane stvarnom vrstom zbirke.

Na primjer, programer izrađuje popis samo za čitanje koristeći "Collections.unmodifiableList (list)" i pozivanjem metode call (), add () ili remove (). Jasno bi trebalo baciti UnsupportedOperationException.

41) Nazovite klase kolekcije koje daju nasumični pristup elementima

Klase kolekcije koje daju nasumični pristup elementima njegovim elementima su: 1) ArrayList, 2) HashMap, 3) TreeMap i 4) Hashtable.

42) Objasnite razliku između Queue i Deque.

Red Deque
Zove se Red s jednim krajem Zove se Red s dva kraja
Elementi u redu čekanja dodaju se ili uklanjaju s jednog kraja Elementi u redu čekanja dodani su s oba kraja, a mogu se dodati i ukloniti s oba kraja
Manje je svestran. Svestraniji je.

43) Spomenite provedbeno sučelje Popis i postav

Klasa koja implementira sučelje popisa: 1) ArrayList, 2) Vector i 3) LinkedList.

Razred koji implementira Set sučelja: 1) HashSet i 2) TreeSet.

44) Objasnite obrazac dizajna koji slijedi Iterator

Iterator slijedi detalje uzorka dizajna iteratora. Omogućuje programeru da se kreće kroz zbirke objekata koristeći zajedničko sučelje, a da ne zna za njegovu implementaciju.

45) Kakav je pogled () sučelja reda čekanja?

Peek () je metoda sučelja reda. Dohvaća sve elemente, ali ne uklanja glavu reda. U slučaju da je red čekanja prazan, tada će ova metoda vratiti nulu.

46) Što je CopyOnWriteArrayList?

CopyOnWriteArrayList je inačica ArrayList u kojoj se operacije poput dodavanja i postavljanja provode stvaranjem kopije niza. On je siguran za niti i stoga ne baca ConcurrentModificationException. Ovaj ArrayLists dopušta sve elemente, uključujući null.

47) Razlikovati ArrayList i LinkedList

Razlika između ArrayList i LinkedList je:

ArrayList LinkedList
Koristi dinamički niz. Koristi dvostruko povezan popis.
ArrayList nije poželjniji za manipulaciju. LinkedList je poželjniji za manipulaciju.
ArrayList omogućuje nasumični pristup. LinkedList ne pruža nasumični pristup.
ArrayList s pohranjuje samo predmete, stoga je potrebno manje memorije LinkedList pohranjuje objekt kao i objekt adrese; dakle, potrebno je više memorije.

48) Objasnite metode sučelja iteratora

Metode sučelja iteratora su:

Metoda Opis
javna logička vrijednost hasNext () Vraća true u iteratoru ima elemente; u suprotnom, vraća se false.
javni objekt sljedeći () Ova metoda vraća element i pomiče pokazivač na sljedeću vrijednost.
ukloni javnu prazninu () Ova Java metoda može ukloniti posljednje elemente koje je iterator vratio. Uklanjanje javne praznine () manje se koristi.

49) Koje su metode klase HashSet?

Metode klase HashSet su:

Metode Opis
logičko dodavanje (objekt o) Ova metoda dodaje element spominjanja u ovaj skup ako već nije prisutan.
boolean sadrži (objekt o): Vraća true ako skup sadrži navedeni element.
void clear (): Ova metoda uklanja postavljene elemente.
boolean isEmpty (): Vraća true u slučaju, skup nema elemenata.
logičko uklanjanje (objekt o): Uklanja navedeni element iz skupa.
objektni klon (): Ova metoda vraća kopiju instance HashSet: sami elementi nisu klonirani.
iterator iterator () Vraća iterator preko elemenata u ovom skupu.
int veličina (): Vraća broj dostupnih elemenata u skupu.

50) Koje su metode klase Java TreeSet?

Metode klase Java TreeSet su:

Metode Opisi
boolean addAll (Zbirka c) U ovaj skup dodajte sve elemente u navedenoj zbirci.
boolean sadrži (objekt o) Vraća true ako skup sadrži element spominjanja.
logički isEmpty () Ova Java metoda vraća true ako ovaj skup ne sadrži elemente.
logičko uklanjanje (objekt o) Uklonite navedeni element iz skupa.
void dodaj (objekt o) Dodaje navedeni element skupu.
void clear () Ova Java metoda uklanja sve elemente iz skupa.

51) Objasnite povezani HashSet

Klasa Java LinkedHashSet je Povezana lista i Hash tablica implementacija Set sučelja. Sadrži jedinstvene elemente iste kao i HashSet. Povezani HashSet u Javi također nudi opcionalne skupne operacije koje mogu održavati redoslijed umetanja.

52) Koje su važne metode korištene na povezanom popisu?

Važne metode korištene na povezanom popisu su:

Metoda Opis
logičko dodavanje (objekt o) Koristi se za dodavanje navedenog elementa na kraj vektora.
boolean sadrži (objekt o) To je metoda koja vraća true ako ovaj popis sadrži navedeni element.
void add (int indeks, element objekta) Umeće element u navedeni element u vektor.
void addFirst (objekt o) Koristi se za umetanje zadanog elementa na početku.
void addLast (objekt o) Koristi se za dodavanje zadanog elementa do kraja.
Int veličina () Ovom se metodom može vratiti ukupni broj elemenata na popisu.
logičko uklanjanje (objekt o) Može ukloniti prvu pojavu navedenog elementa s ovog popisa.
int indexOf (element objekta) Ova Java metoda vraća indeks s prvim pojavljivanjem spomenutog elementa na ovom popisu ili -1.
int lastIndexOf (element objekta) To je Java metoda koja vraća indeks s posljednjim pojavljivanjem navedenog elementa na ovom popisu ili -1.

53) Navedi razne klase dostupne u setovima

Različite klase dostupne u skupovima su: HashSet, TreeSetand i LinkedHashSet.

54) Metode popisa dostupne u sučelju Java Queue

  • logički dodatak (objekt)
  • logička ponuda (objekt)
  • ukloni objekt ()
  • anketa objekta ()
  • element objekta ()
  • objekt zaviriti ()

55) Razlikovati popis i skup.

Popis Postavi
Uređena zbirka elemenata Neuređena kolekcija elemenata
Očuva redoslijed umetanja Ne čuva redoslijed umetanja
Dopuštene su dvostruke vrijednosti Dvostruke vrijednosti nisu dopuštene
Može se pohraniti bilo koji broj null vrijednosti Može se pohraniti samo jedna null vrijednost
ListIterator se može koristiti za prelazak popisa u bilo kojem smjeru ListIterator se ne može koristiti za prelazak skupa
Sadrži naslijeđenu klasu koja se naziva vektor Ne sadrži naslijeđenu klasu

56) Objasnite za svaku petlju primjer

For-Every Loop je drugi oblik for petlje koji se koristi za prelazak niza. Značajno smanjuje kôd i ne koristi se indeks, odnosno brojač u petlji.

Primjer za svaku petlju:

class UsingForEach {public static void main(String[] args) {String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};//The conventional approach of using the for loopSystem.out.println("Using conventional For Loop:");for(int i=0; i< arrData.length; i++){System.out.println(arrData[i]);}System.out.println("\nUsing Foreach loop:");//The optimized method of using the for loop - also called the foreach loopfor (String strTemp : arrData){System.out.println(strTemp);}}}

57) Objasnite operatora dijamanata

Dijamantni operator omogućuje prevoditelju da prikuplja argumente tipa generičke klase. U Javi SE programer može parametarski konstruktor zamijeniti praznim skupom parametara (<>) poznatim kao dijamantni operator.

58) Objasnite sučelje slučajnog pristupa

Sučelje RandomAccess koriste implementacije popisa za naznaku da podržavaju brzo.

59) Imenujte klase kolekcije koje implementiraju sučelje sa slučajnim pristupom

Paket Java.util ima klase koje mogu implementirati sučelje sa slučajnim pristupom su: CopyOnWriteArrayList, Stack, ArrayList i Vector.

60) Kako se pridružiti više ArrayLists?

Popis nudi metodu addall () višestrukog ArrayList u Javi.

Na primjer, razmotrite dva popisa 1) areaList i 2) secondAreaList. Programer im se može pridružiti pomoću addall () poput:

areaList.addAll (secondAreaList);

61) Objasnite sučelje deque

Java.util.Deque je Java, sučelje koje proširuje sučelje reda čekanja. Pruža podršku za umetanje i brisanje elemenata na oba kraja. Ovaj se red čekanja naziva i dvostrukim redom čekanja.

62) Objasnite Linkedhashmap

LinkedHashMap je implementacija sučelja Map. Također može proširiti klasu HashMap. Stoga, poput HashMap, LinkedHashMap omogućuje programerima Java da dozvole jedan null ključ i više null vrijednosti.

63) Objasnite metode uklanjanja elemenata s ArrayList

Metode za uklanjanje elemenata iz ArrayList su:

Metoda Opis
čisto() Ova metoda uklanja elemente iz ArrayList.
ukloni (int indeks) Ova metoda ArrayList može ukloniti element na određenom položaju.
ukloniti (objekt o) Može ukloniti prvu pojavu spomenutog elementa s ArrayList.
ukloniti sve() Može ukloniti popis elemenata koji se nalaze u određenoj zbirci.
removeIf (Predikatni filter) Ova metoda uklanja elemente koji zadovoljavaju spomen predikata.

64) Objasnite kartu. unos u Map

Map.entry je Java sučelje java.util. Ima ugniježđeno sučelje u Map. Ovo sučelje mora biti kvalificirano imenom klase ili sučelja kojem je član. Stoga se kvalificira kao karta. Ulazak. Predstavlja par ključeva i vrijednosti koji mogu tvoriti element Mape.

Ova metoda vraća prikaz zbirke. Na primjer, razmotrite cityMap kao kartu. Programer može koristiti entrySet () za dobivanje postavljenog prikaza karte koja ima element Map.Entry. Programer također može koristiti getKey () i getValue () Map.Entry da dobije par ključa i vrijednosti karte.

65) Kojom se metodom sortira niz u rastućem redoslijedu?

Metoda okvira Java kolekcije Collections.sort () koristi se za sortiranje niza u rastućem redoslijedu.

66) Kako izmjeriti izvedbu ArrayList-a?

Učinak ArrayList može se mjeriti na sljedeći način:

  • Dodavanje elementa: Programer može dodati element na kraju ArrayList metodom add (E e). To je O (1). U najgorem scenariju, moglo bi ići na O (n). To se može dogoditi ako programer doda više elemenata od kapaciteta polja.
  • Dohvaćanje elementa : - Programer može pristupiti indeksu niza pomoću get (int index). Izvedba se u ovom slučaju može izmjeriti pomoću ArrayList get () je O (1).
  • Uklanjanje elementa: U slučaju da programeri uklanjaju element pomoću uklanjanja (int indeks), tada se izvedba ArrayList može izračunati upotrebom navedene metode uklanjanja (int indeksa) je O (n - indeks) metoda.

67) Objasnite predavanje LinkedList

Klasa LinkedList u Javi implementira Deque i List pomoću dvostruko povezanog popisa. Na dvostruko povezanom popisu nalazi se čvor privatne klase koji pruža njegovu strukturu. Također ima varijablu stavke za čuvanje vrijednosti i referencu na klasu Node. To se može koristiti za povezivanje sljedećeg i prethodnog čvora.

68) Navedite primjer Hashmapa

Primjer Hashmapa je:

import java.util.HashMap;import java.util.Map;public class Sample_TestMaps{public static void main(String[] args){Map objMap = new HashMap();objMap.put("Name", "Suzuki");objMap.put("Power", "220");objMap.put("Type", "2-wheeler");objMap.put("Price", "85000");System.out.println("Elements of the Map:");System.out.println(objMap);}}

69) Kako ponoviti kartu?

Programer ne može izravno ponoviti kartu, ali ovo sučelje ima dvije metode koje daju pogled na skup karata. Te su metode:

  • Set > entrySet (): To je metoda koja vraća skup koji ima unose spomenute na karti. Ovim se unosima uglavnom prigovara, koji ima tip Map. Ulazak.
  • Set keySet (): Ova Java metoda vraća skup koji ima ključ karte.

70) Objasnite mapu drveta u Javi

TreeMap je klasa koja implementira Map sučelje LinkedHashMap i HashMap. Također može implementirati NavigableMap sučelje i može proširiti klasu AbstractMap.

71) Koja je razlika između Hashmapa i Hashtablea?

Hashmap Hashtable
Nije sinkronizirano. Sinkronizirano je.
HashMap dopušta jedan ključ kao nulu vrijednost. HashTable ne dopušta null vrijednosti.
Iterator se koristi za prolazak kroz HashMap. Za prelazak HashTable-a koristi se ili Iterator ili Enumerator.
Može se koristiti i za HashTable, i za HashMap i brzi je za neuspjeh. Može se koristiti s HashTable-om i siguran je u kvaru.
HashMap radi brže od HashTable-a. Hashtable nije puno brži u usporedbi s HashMapom.

72) Objasnite interni rad HashSeta u Javi

HashSet u Javi interno koristi HashMap za spremanje elemenata. Također može pohraniti jedinstvene vrijednosti bez dupliciranih vrijednosti.

U Javi programer HashSet može imati metodu add (E e) koja uzima samo element koji se dodaje kao parametar. Ne prihvaća par ključ i vrijednost.

73) Objasnite notaciju Big-O na primjeru

Oznaka Big-O prikazuje izvedbu algoritma kao broj elemenata u ArrayListu. Programer može koristiti Big-O notaciju za odabir implementacije zbirke. Temelji se na performansama, vremenu i memoriji.

Na primjer, ArrayList get (indeks i) je metoda za izvođenje konstantne operacije. To ne ovisi o ukupnom broju elemenata dostupnih na popisu. Stoga je izvedba u Big-O notaciji O (1).

74) Objasnite najbolje prakse u programu Java Collection Framework

Najbolji postupci u okviru Java Collection Framework su:

  • Odaberite ispravnu vrstu sakupljanja, ovisno o potrebi.
  • Izbjegavajte ponovno osmišljavanje ili mijenjanje veličine procjenom ukupnog broja elemenata koji će biti pohranjeni u klasama kolekcije.
  • Napišite Java program u smislu sučelja. To će pomoći programeru da u budućnosti bez napora promijeni svoju implementaciju.
  • Programer može koristiti generičke lijekove za sigurnost tipova.
  • Koristite nepromjenjive klase dane u Java Development Kit. Izbjegavajte implementaciju equals () i hashCode () za prilagođene klase.
  • Programer bi trebao koristiti uslužnu klasu Zbirke za algoritme ili za dobivanje samo za čitanje, sinkronizaciju ili prazne zbirke. To će poboljšati ponovnu upotrebu koda uz nisku održivost.

75) Objasnite razne vrste redova u Javi

U Javi postoje tri vrste redova:

  • Prioritetni red: To je posebna vrsta Reda u kojem se elementi sortiraju prema njihovom prirodnom redoslijedu ili prilagođenoj usporedbi.
  • Kružni red: To je vrsta reda u kojem se korisničke operacije izvode na temelju FIFO metode. Posljednji element povezan je s prvim položajem kako bi se napravio krug.
  • Dvostruki red čekanja: Dvostruki red čekanja apstraktna je vrsta podataka koja generalizira red čekanja. Elementi u ovom redu mogu se dodati ili ukloniti s glave ili repa.

76) Koja je razlika između steka i reda?

Stog Red
Princip rada hrpe je LIFO. Princip rada reda je FIFO.
Jedan kraj koristi se za umetanje ili brisanje elemenata. Jedan kraj služi za umetanje, a drugi kraj za brisanje elemenata.
Koristi jedan pokazivač. Koristi dva pokazivača u jednostavnom redu.
Nema nikakvu varijantu. Ima varijante poput reda prioriteta, kružnog reda, dvostruko završenog reda.
Jednostavan je za upotrebu. Nije ga jednostavno koristiti.

77) Koja je razlika između polja i stoga?

Razlika između polja i stoga je:

Polje Stog
To je zbirka elemenata koji se identificiraju indeksom. To je operacija prikupljanja koja služi kao operacija push i pop.
Ima elemente vrsta podataka koji su isti. Ima elemente različitih vrsta podataka.
Elementi se mogu ukloniti ili dodati u polje pomoću operacije nasumičnog pristupa. Elementi se mogu ukloniti ili dodati u skup uporabom LIFO operacije.

78) Definiraj iterator ()

Iterator () je sučelje koje pruža metode za ponavljanje zbirke. Iterator može zauzeti mjesto popisa u Javi. Omogućuje pozivatelju uklanjanje elemenata iz zbirke. Metoda pruža generički način za prelazak pomoću elemenata zbirke i provedbe uzorka dizajna iteratora.

79) Koji su različiti načini ponavljanja popisa?

Programer Java Framework Framework može iterirati popis na dva načina: 1) pomoću iteratora i 2) koristeći ga za svaku petlju.

80) Koje su prednosti stoga?

Prednosti stoga su:

  • Pomaže vam u upravljanju podacima metodom Last In First Out (LIFO), što nije moguće s povezanim popisom i nizom.
  • Kad se funkcija pozove, lokalne se varijable spremaju u stog i ona se automatski uništava kad se vrati.
  • Stog se koristi kada se varijabla ne koristi izvan te funkcije.
  • Omogućuje vam upravljanje načinom na koji se memorija dodjeljuje i oslobađa.
  • Stack automatski čisti objekt.
  • Nije lako korumpiran
  • Varijablama se ne može promijeniti veličina.