Topp 80 Java-samlinger Intervju spørsmål & Svar

Anonim

Her er Java Collections Intervju Spørsmål for ferskere og erfarne kandidater for å få drømmejobben.

1) Hva er rammeverk i Java?

Et rammeverk er en populær og ferdig laget arkitektur som inneholder et sett med klasser og grensesnitt.

2) Hva er Collection-rammeverket i Java?

Collection Framework er en gruppering av klasser og grensesnitt som brukes til å lagre og administrere objektene. Det gir forskjellige klasser som Vector, ArrayList, HashSet, Stack, etc. Java Collection framework kan også brukes til grensesnitt som kø, sett, liste, etc.

3) Forklar samlingsklasse

java.util.Collections er en klasse som består av statiske metoder som fungerer på samlinger. Den inneholder polymorfe algoritmer for å operere på samlinger, "wrappers". Denne klassen inneholder metoder for algoritmer, som binær sortering, søk, blanding, etc.

4) Hva er hashCode ()?

HashCode () er en metode som returnerer en heltall-hash-kode.

5) Skille mellom ArrayList og Vector i Java-samlingsrammeverket.

ArrayList Vector
ArrayList kan ikke synkroniseres. Vector kan er synkronisert.
Det er ikke en arveklasse. Det er en arveklasse.
Den kan øke størrelsen med 50% av størrelsen på matrisen. Det kan øke størrelsen ved å doble størrelsen på matrisen.
ArrayList er ikke trådsikker. Vector er trådsikker.

6) Hva er ArrayList i Java?

ArrayList er en datastruktur som kan strekkes for å imøtekomme flere elementer i seg selv og krympe tilbake til en mindre størrelse når elementene fjernes. Det er en veldig viktig datastruktur som er nyttig i håndteringen av elementers dynamiske oppførsel.

7) Skille mellom Iterator og ListIterator

Forskjellen mellom Iterator og ListIterator er:

Iterator ListIterator
Iteratoren kan krysse matriseelementene i fremoverretningen. ListIterator kan krysse matriseelementene både bakover og fremover.
Den kan brukes i kø, liste og sett. Den kan brukes i List.
Den kan bare utføre fjerning. Den kan utføre legge til, fjerne og sette operasjoner mens den krysser samlingen.

8) Hva er forskjellen mellom Iterator og Enumeration?

Forskjellen mellom Iterator og Enumeration

Iterator Oppregning
Iteratoren kan krysse både arv så vel som ikke-arvselementer. Oppregning kan bare krysse eldre elementer.
Iteratoren går feil. Oppregningen går ikke feil.
Iteratoren er veldig treg sammenlignet med Enumeration. Oppregning er rask sammenlignet med Iterator.
Iteratoren kan utføre fjerning mens den krysser samlingen. Oppregningen kan bare utføre traversoperasjon på samlingen.

9) Definer BlockingQueue

BlockingQueue er et grensesnitt som brukes i Java som kan utvide køen. Det gir samtidighet i forskjellige køoperasjoner som henting, innsetting, sletting, etc.

Køen venter på å bli ikke-tom når elementene hentes. BlockingQueue skal ikke inneholde nullelementer. Implementeringen av denne køen er trådsikker.

Syntaksen til BlockingQueue er:

public interface BlockingQueue extends Queue  

10) Forklar overstyring er lik () -metoden

Likemetoden brukes til å sjekke likheten mellom to objekter. I tilfelle hvis programmereren vil sjekke et objekt basert på eiendommen, må det overstyres.

11) Hva er forskjellen mellom Comparable og Comparator?

Forskjellen mellom Comparable og Comparator er:

Sammenlignelig Komparator
Comparable gir comparTo () -metoden for å sortere elementer i Java. Comparator gir sammenligningsmetoden () for å sortere elementer i Java.
Sammenlignbart grensesnitt er tilstede i java.lang-pakken. Komparatorgrensesnitt er tilstede i java. util pakke.
Sorteringslogikken må være i samme klasse hvis objekt du skal sortere. Logikken med sortering bør være i en egen klasse for å skrive forskjellig sortering basert på forskjellige attributter til objekter.
Klassen hvis objekter du vil sortere, må implementere det sammenlignbare grensesnittet. Class, hvis objekter du vil sortere, trenger ikke å implementere et komparatorgrensesnitt.
Det gir enkle sorteringssekvenser. Det gir flere sorteringssekvenser.
Denne metoden kan sortere dataene i henhold til den naturlige sorteringsrekkefølgen. Denne metoden sorterer dataene i henhold til den tilpassede sorteringsrekkefølgen.
Det påvirker den opprinnelige klassen. dvs. den faktiske klassen er endret. Det påvirker ikke den opprinnelige klassen, dvs. at den faktiske klassen ikke endres.
Implementert ofte i API av Kalender, Wrapper-klasser, Dato og String. Det er implementert for å sortere forekomster av tredjepartsklasser.
Alle wrapper-klasser og String-klasser implementerer det sammenlignbare grensesnittet. De eneste implementerte klassene av Comparator er Collator og RuleBasedColator.

12) Forklar lik () med eksempel

Equals () verifiserer om nummerobjektet er lik objektet, som sendes som et argument eller ikke.

Syntaksen for equals () -metoden er:

public boolean equals(Object o) 

Denne metoden tar to parametere 1) hvilket som helst objekt, 2) returverdi. Det returnerer sant hvis det overførte argumentet ikke er null og er et objekt av en lignende type som har samme numeriske verdi.

Eksempel:

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) Oppgi fordelene med generisk innsamling

Fordelene med å bruke den generiske samlingen er:

  • Hvis programmererne bruker generisk klasse, trenger de ikke typecasting.
  • Det er typesikkert og kan kontrolleres på tidspunktet for utarbeidelsen.
  • Det gir stabiliteten til koden ved å oppdage feil på kompileringstidspunktet.

14) Forklar metoden for å konvertere ArrayList til Array og Array til ArrayList

Programmører kan konvertere en Array til ArrayList ved hjelp av asList () -metoden i Arrays-klassen. Det er en statisk metode i Arrays-klassen som godtar List-objektet. Syntaksen for asList () -metoden er:

Arrays.asList(item) 

Java-programmerere kan konvertere ArrayList til List-objektet ved hjelp av syntaksen:

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

15) Gi eksempel på ArrayList

Eksemplet på omvendt ArrayList er:

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) Gi eksempel for å sortere en matrise i stigende rekkefølge

Eksemplet på sortering av en matrise i fallende rekkefølge er:

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) Forklar de grunnleggende grensesnittene for Java-samlerammen

Java-samlingsrammeverket er en rot til samlingshierarkiet. Den representerer en gruppe objekter som dens elementer. Java-programmeringsspråket gir ikke en direkte implementering av et slikt grensesnitt.

  • Sett: Sett er en samling uten duplikatelementer. Den bruker hashtable for lagring av elementer.
  • Liste: Liste er en ordnet samling som kan inneholde dupliserte elementer. Det gjør det mulig for utviklere å få tilgang til alle elementer fra innboksen. Listen er som en matrise som har en dynamisk lengde.
  • KART: Det er et objekt som tilordner nøkler til verdier. Den kan ikke inneholde dupliserte nøkler. Hver nøkkel kan tilordnes til minst en verdi.

18) Hva er funksjonene i Java Hashmap?

Funksjonene til Java Hashmap er:

  • Verdiene kan lagres på et kart ved å danne et nøkkelverdipar. Verdien kan hentes ved hjelp av nøkkelen ved å sende den til riktig metode.
  • Hvis det ikke finnes noe element i kartet, vil det kaste et 'NoSuchElementException'.
  • HashMap lagrer bare objektreferanser. Det er derfor det er umulig å bruke primitive datatyper som dobbelt eller int. Bruk innpakningsklasse (som Integer eller Double) i stedet.

19) Hva er en stabel?

En stabel er et spesielt område i datamaskinens minne som lagrer midlertidige variabler opprettet av en funksjon. I stabelen blir variabler erklært, lagret og initialisert i løpet av kjøretiden.

20) Hva er koblet liste?

En koblet liste er en datastruktur som kan lagre en samling av elementer. Med andre ord kan lenkede lister brukes til å lagre flere objekter av samme type. Hver enhet eller element i listen blir referert til som en node. En node i den koblede listen har dataene og adressen til neste node. Det er som en kjede. Koblede lister brukes til å lage grafer og trær.

21) Gi eksempel på ArrayList

Eksemplet på ArrayList er:

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) Forklar koblet liste støttet av Java

To typer koblede lister som støttes av Java er:

  • Singly Linked-liste: Singly Linked-liste er en type datastruktur. I en enkeltkoblet liste lagrer hver node i listen innholdet på noden og en referanse eller peker til neste node i listen. Den lagrer ingen referanse eller peker til forrige node.
  • Dobbeltkoblede lister: Dobbeltkoblede lister er en spesiell type koblet liste hvor kryssing over dataelementene kan gjøres i begge retninger. Dette er mulig ved å ha to lenker i hver node, en som lenker til neste node og en annen som kobles til forrige node.

23) Forklar metodene fra køgrensesnittet?

Metodene for Java-køgrensesnittet er:

Metode Beskrivelse
boolsk add (objekt) Setter inn spesifisert element i køen. Det blir sant i tilfelle det lykkes.
boolsk tilbud (objekt) Denne metoden brukes til å sette inn elementet i køen.
Fjern objekt () Den henter og fjerner køhodet.
Objektmåling () (): Den henter og fjerner køhode eller returnerer null hvis det er tomt.
Objektmåling () Den henter og fjerner køhode eller returnerer null hvis det er tomt.
Objektelement () Henter dataene fra køen, men fjerner ikke hodet.
Objekt titt () Henter dataene fra køen, men fjerner ikke hodet, eller hvis køen er køen er tom, vil den hente null.

24) Nevn metodene som tilbys av Stack-klassen

Viktige metoder levert av Stack-klassen er:

  • push (): Skyv elementet i bunken.
  • tom (): Denne metoden finner ut om bunken er tom eller ikke.
  • pop (): Denne rammemetoden for Java-samling fjerner objektet fra bunken.
  • søk (): Denne metoden søker etter elementer i bunken.
  • peek (): Denne Java-metoden ser på stack-objektet uten å fjerne det.

25) Definer emptySet () i Java-samlingsrammen

Method emptySet () som returnerer det tomme uforanderlige settet når programmerere prøver å fjerne nullelementer. Settet som returneres av emptySet () kan serialiseres. Syntaksen til denne metoden er:

offentlig statisk slutt Sett emptySet ()

26) Skille mellom samling og samlinger

Forskjellen mellom samling og samlinger er:

Samling Samlinger
Samlingen er et grensesnitt. Samlinger er en klasse.
Den representerer en gruppe objekter som en enkelt enhet. Den definerer ulike bruksmetoder for samleobjekter.
Samlingen er rotgrensesnittet til Java Collection-rammeverket. Samlinger er en generell nytteklasse.
Dette grensesnittet brukes til å utlede innsamlingsdatastrukturene. Denne klassen inneholder statiske metoder for å manipulere datastrukturen.

27) Definere LinkedHashSet i Java Collection-rammeverket?

LinkedHashSet er en underklasse av klassen kalt HashSet og implementerer settgrensesnittet. Det er en velordnet versjon av HashSet som opprettholder en dobbeltkoblet liste på tvers av alle elementene.

28) Hva er forskjellen mellom failfast og failsafe?

Failfast Feilsikker
Det tillater ikke modifisering av samlingen mens den gjentas. Det tillater modifikasjon av samlingen mens den gjentas.
Det kan kaste ConcurrentModificationException Det kan ikke kaste noe unntak.
Den bruker den originale samlingen for å krysse elementene. Den bruker en original samlingskopi for å krysse elementene.
Det er ikke noe krav om ekstra minne. Det er et krav om ekstra minne.

29) Vis samlingsvisninger av et kartgrensesnitt

Samlingsvisninger av kartgrensesnitt er: 1) nøkkelsettvisning, 2) verdisettvisning og 3) oppføringssettvisning.

30) Hva er fordelene med Collection Framework i Java?

Fordelene med Collection Framework i Java er:

  • Java collection framework tilbyr svært effektive og effektive datastrukturer som forbedrer programmets nøyaktighet og hastighet.
  • Programmet utviklet med Java-samlingsrammeverket er enkelt å vedlikeholde.
  • En utvikler kan blande klasser med andre typer som resulterer i økt gjenbrukbarhet av koden.
  • Java-samlingsrammeverket gjør det mulig for programmerere å endre de primitive samlingstypene slik de vil.

31) Hva er en god måte å sortere Collection-objektene på Java?

En god måte å sortere Java-samlingsobjekter på er å bruke Comparable og Comparator-grensesnitt. En utvikler kan bruke Collections.sort (), elementene er sortert basert på rekkefølgen som er nevnt i CompareTo ().

Når en utvikler bruker Collections, sorter (Comparator), sorterer den objektene avhengig av compar () i Comparator-grensesnittet.

32) Forklar Vector i Java

Vektoren er den samme som en matrise. Den har komponenter som er tilgjengelige med en indeksverdi. Vektorer kan inneholde en eldre metode som ikke er en del av samlingsrammen.

33) Hva er forskjellen mellom sett og kart?

Sett Kart
Settet tilhører package-java.util. Kartet tilhører pakke- java.util.
Det kan utvide samlegrensesnittet. Det utvider ikke samlingsgrensesnittet.
Det tillater ikke dupliserte verdier. Det tillater dupliserte verdier.
Sett kan bare sortere en nullverdi. Kartet kan sortere flere nullverdier.

34) Definer ordboksklasse

Ordboksklassen er en Java-klasse som har muligheten til å lagre nøkkelverdipar.

35) Definer EnumSet

java.util.EnumSet er Set-implementering som kan brukes med enumtyper. EnumSet å ha alle elementene må komme fra en enumtype spesifisert eller implisitt. Den er ikke synkronisert, og nullnøkler er ikke tillatt. EnumSet gir metoder som EnumSetof (E først, E

… Rest), complementOf (EnumSet s) og copyOf (Collection c).

36) Hva er de to måtene å fjerne duplikater fra ArrayList?

To måter å fjerne duplikater fra ArrayList er:

  • HashSet: Utvikler kan bruke HashSet til å fjerne duplikatelementet fra ArrayList. Ulempen er at den ikke kan bevare innsettingsrekkefølgen.
  • LinkedHashSet: Utviklere kan også opprettholde rekkefølgen på innsettingen ved å bruke LinkedHashSet i stedet for HashSet.

37) Hva er IdentityHashMap?

IdentityHashMap er en klasse som implementerer Serialiserbare, klonbare grensesnitt, kartlegger og utvider AbstractMap-klassen. Den er designet for saken der det er behov for referanselikhetssemantikk.

38) Hva er WeakHashMap?

WeakHashMap er en implementering av Java Map. Den brukes til å lagre svake referanser til nøklene. Sortering ved hjelp av dette kartet gjør at et nøkkelverdipar kan samles opp som søppel. Nøkkelen er ikke referert utenfor WeakHashMap.

39) Hva er metodene for å gjøre samlingstrådssikker?

Metodene for å gjøre samlingstråden trygg er:

  • Collections.synchronizedList (liste);
  • Collections.synchronizedMap (kart);
  • Collections.synchronizedSet (sett);

40) Forklar UnsupportedOperationException

UnsupportedOperationException er et unntak som kastes på metoder som ikke støttes av den faktiske samlingstypen.

For eksempel lager utvikleren en skrivebeskyttet liste ved hjelp av "Collections.unmodifiableList (list)" og ringer call (), add () eller remove () -metoden. Det burde tydelig kaste UnsupportedOperationException.

41) Nevn samlingsklassene som gir tilfeldig element tilgang til elementene

Samlingsklasser som gir tilfeldig element tilgang til elementene er: 1) ArrayList, 2) HashMap, 3) TreeMap og 4) Hashtable.

42) Forklar forskjellen mellom kø og Deque.

Deque
Det kalles en kø med én ende Det kalles en dobbeltkø
Elementer i køen legges til eller fjernes fra den ene enden Elementer i køen er lagt til fra begge sider, kan legges til og fjernes fra begge sider
Det er mindre allsidig. Det er mer allsidig.

43) Nevn implementeringslisten og sett grensesnittet

Klassegrensesnitt for implementering av klasse: 1) ArrayList, 2) Vector og 3) LinkedList.

Klasseimplementeringssettgrensesnitt : 1) HashSet og 2) TreeSet.

44) Forklar designmønsteret etterfulgt av Iterator

Iteratoren følger detaljene i iterator-designmønsteret. Det gir utvikleren å navigere gjennom objektsamlingene ved hjelp av et felles grensesnitt uten å vite implementeringen.

45) Hva er tittet () på køgrensesnittet?

Peek () er en metode for køgrensesnitt. Den henter alle elementene, men fjerner ikke køhodet. Hvis køen er tom, vil denne metoden returnere null.

46) Hva er CopyOnWriteArrayList?

CopyOnWriteArrayList er en variant av ArrayList der operasjoner som legge til og sett er implementert ved å lage en kopi av matrisen. Det er en trådsikker, og dermed kaster den ikke ConcurrentModificationException. Denne ArrayLists tillater alle elementene, inkludert null.

47) Forskjell mellom ArrayList og LinkedList

Forskjellen mellom ArrayList og LinkedList er:

ArrayList LinkedList
Den bruker et dynamisk utvalg. Den bruker en dobbeltkoblet liste.
ArrayList er ikke å foretrekke for manipulasjon. LinkedList er å foretrekke for manipulasjon.
ArrayList gir tilfeldig tilgang. LinkedList gir ikke tilfeldig tilgang.
ArrayLists lagrer bare gjenstander, derfor tar det mindre minneomkostninger LinkedList lagrer både objekt og adresseobjekt; derfor tar det mer overhead av minne.

48) Forklar metodene for iteratorgrensesnittet

Metoder for iteratorgrensesnitt er:

Metode Beskrivelse
offentlig boolsk hasNext () Det returnerer sant i iteratoren har elementer; Ellers returnerer den falsk.
offentlig gjenstand neste () Denne metoden returnerer elementet og flytter pekeren til neste verdi.
offentlig tom fjern () Denne Java-metoden kan fjerne de siste elementene som returneres av iteratoren. Offentlig tomrom fjerne () er mindre brukt.

49) Hva er metodene i HashSet-klassen?

Metoder for HashSet-klassen er:

Metoder Beskrivelse
boolsk tilsetning (Objekt o) Denne metoden legger til nevnelseselementet i dette settet hvis det ikke allerede er til stede.
boolsk inneholder (Objekt o): Det returnerer sant hvis settet inneholder det angitte elementet.
ugyldig klar (): Denne metoden fjerner settelementer.
boolsk isEmpty (): Det stemmer igjen i saken, settet har ingen elementer.
boolsk fjerning (Objekt o): Det fjerner det angitte elementet fra settet.
objektklon (): Denne metoden returnerer en kopi av HashSet-forekomsten: selve elementene blir ikke klonet.
iterator iterator () Den returnerer en iterator over elementene i dette settet.
int størrelse (): Den returnerer antall tilgjengelige elementer i settet.

50) Hva er metodene i Java TreeSet-klassen?

Metodene i Java TreeSet-klassen er:

Metoder Beskrivelser
boolsk addAll (samling c) Legg til alle elementene i den angitte samlingen i dette settet.
boolsk inneholder (Objekt o) Returnerer sant hvis settet inneholder omtaleelementet.
boolsk isEmpty () Denne Java-metoden returnerer sant hvis dette settet ikke inneholder noen elementer.
boolsk fjerning (Objekt o) Fjern det angitte elementet fra settet.
void add (Object o) Det legger til det angitte elementet i settet.
ugyldig klart () Denne Java-metoden fjerner alle elementene fra settet.

51) Forklar koblet HashSet

Java LinkedHashSet-klasse er en koblet liste og Hash-tabellimplementering av Set-grensesnittet. Den inneholder unike elementer som et HashSet. Koblet HashSet i Java gir også valgfrie settoperasjoner som kan opprettholde rekkefølgen for innsetting.

52) Hva er de viktige metodene som brukes i en koblet liste?

De viktige metodene som brukes i den koblede listen er:

Metode Beskrivelse
boolsk tilsetning (Objekt o) Den brukes til å føye det spesifiserte elementet til slutten av vektoren.
boolsk inneholder (Objekt o) Det er en metode som returnerer sant hvis denne listen inneholder det angitte elementet.
void add (int index, Object element) Setter inn elementet ved det angitte elementet i vektoren.
void addFirst (Objekt o) Den brukes til å sette inn det gitte elementet i begynnelsen.
ugyldig addLast (Objekt o) Den brukes til å legge til det gitte elementet til slutt.
Int størrelse () Denne metoden kan brukes til å returnere det totale antallet elementer i en liste.
boolsk fjerning (Objekt o) Det kan fjerne den første forekomsten av det angitte elementet fra denne listen.
int indexOf (Objektelement) Denne Java-metoden returnerer indeksen med den første forekomsten av nevnelseselementet i denne listen, eller -1.
int lastIndexOf (objektelement) Det er en Java-metode som returnerer indeksen med den siste forekomsten av det angitte elementet i denne listen, eller -1.

53) Liste over forskjellige klasser som er tilgjengelige i sett

Ulike klasser tilgjengelig i sett er: HashSet, TreeSetand og LinkedHashSet.

54) Liste metoder tilgjengelig i Java Queue interface

  • boolsk add (objekt)
  • boolsk tilbud (objekt)
  • objekt fjern ()
  • objektavstemning ()
  • objektelement ()
  • objekt titt ()

55) Skille mellom liste og sett.

Liste Sett
En bestilt samling av elementer En uordnet samling av elementer
Bevarer innsettingsrekkefølgen Bevarer ikke innsettingsrekkefølgen
Dupliserte verdier er tillatt Dupliserte verdier er ikke tillatt
Et hvilket som helst antall nullverdier kan lagres Bare én nullverdier kan lagres
ListIterator kan brukes til å krysse listen i alle retninger ListIterator kan ikke brukes til å krysse et sett
Inneholder en eldre klasse kalt vektor Inneholder ikke noen eldre klasse

56) Forklar for hver løkke med eksempel

For-Each Loop er en annen form for for loop som brukes til å krysse matrisen. Det reduserer koden betydelig, og det er ingen bruk av indeksen eller rettere sagt telleren i løkken.

Eksempel på for hver løkke:

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) Forklar diamantoperatøren

Diamantoperatør gjør at kompilatoren kan samle inn typeargumentene til generisk klasse. I Java SE kan utvikler erstatte den parameteriserte konstruktøren med en tom parametersett (<>) kjent som diamantoperatør.

58) Forklar grensesnitt for tilfeldig tilgang

RandomAccess-grensesnitt brukes av List-implementeringer for å indikere at de støtter raskt.

59) Nevn samlingsklassene som implementerer grensesnitt for random access

Java.util-pakken har klasser som kan implementere grensesnitt for random access er: CopyOnWriteArrayList, Stack, ArrayList og Vector.

60) Hvordan bli med i flere ArrayLists?

Listen gir en addall () metode flere ArrayList i Java.

Tenk for eksempel på to lister 1) areaList og 2) secondAreaList. En utvikler kan bli med dem ved hjelp av addall () som:

areaList.addAll (secondAreaList);

61) Forklar deque-grensesnitt

Java.util.Deque er Java, et grensesnitt som utvider køgrensesnittet. Det gir støtte for innsetting og sletting av elementer i begge endene. Denne køen kalles også en kø med dobbelt slutt.

62) Forklar Linkedhashmap

LinkedHashMap er implementeringen av Map-grensesnittet. Det kan også utvide HashMap-klassen. Derfor, i likhet med HashMap, gjør LinkedHashMap Java-utviklere i stand til å tillate en nullnøkkel og mer enn én nullverdi.

63) Forklar metoder for å fjerne elementer fra ArrayList

Metodene for å fjerne elementer fra ArrayList er:

Metode Beskrivelse
klar() Denne metoden fjerner elementene fra ArrayList.
fjerne (int-indeks) Denne metoden til ArrayList kan fjerne elementet på en bestemt posisjon.
fjerne (Objekt o) Det kan fjerne den første forekomsten av nevnelseselementet fra ArrayList.
Fjern alle() Det kan fjerne listen over elementer som er i en bestemt samling.
removeIf (Predicate filter) Denne metoden fjerner elementer som tilfredsstiller omtale av et predikat.

64) Forklar kart. oppføring i kart

Map.entry er et Java-grensesnitt for java.util. Den har et nestet grensesnitt i Map. Dette grensesnittet må kvalifiseres etter navnet på klassen eller grensesnittet, som det er medlem. Derfor er det kvalifisert som et kart. Inngang. Det representerer et nøkkel- og verdipar som kan utgjøre et element i et kart.

Denne metoden gir en oversikt over samlingen. Tenk for eksempel på cityMap som et kart. Utvikleren kan bruke entrySet () for å få settvisningen til kartet som har et element Map.Entry. Programmerer kan også bruke getKey () og getValue () på Map.Entry for å få paret nøkkel og verdi på kartet.

65) Hvilken metode brukes til å sortere en matrise i stigende rekkefølge?

Rammemetode for Java-samling, Collections.sort (), brukes til å sortere en matrise i stigende rekkefølge.

66) Hvordan måler du ytelsen til en ArrayList?

Ytelsen til ArrayList kan måles ved:

  • Legge til et element: Utvikler kan legge til et element på slutten av ArrayList ved hjelp av add (E e) -metoden. Det er O (1). I verste fall kan det gå til O (n). Dette kan skje hvis utvikleren legger til flere elementer enn matrisekapasiteten.
  • Henter et element : - Utvikler kan få tilgang til arrayindeksen ved hjelp av get (int index). Ytelsen, i dette tilfellet, kan måles ved hjelp av ArrayList get () er O (1).
  • Fjerne et element: Hvis utviklerne fjerner elementet ved hjelp av remove (int-indeksen), kan ytelsen til ArrayList beregnes ved hjelp av den fjerne (int-index) -operasjonen er O (n - index) -metoden.

67) Forklar LinkedList-klassen

LinkedList-klassen i Java implementerer Deque og List ved hjelp av en dobbeltkoblet liste. Det er en privat klasse node i en dobbeltkoblet liste som gir strukturen. Den har også en varivariabel for å holde verdien og referanse til Node-klassen. Dette kan brukes til å koble neste og forrige noder.

68) Gi et eksempel på Hashmap

Eksemplet med Hashmap er:

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) Hvordan gjenta kart?

Utvikleren kan ikke direkte iterere kart, men dette grensesnittet har to metoder som gir visningssett av kart. Disse metodene er:

  • Set > entrySet (): Det er en metode som returnerer et sett med oppføringene som er nevnt i kartet. Disse oppføringene er generelt motsatt, som har typen Map. Inngang.
  • Set keySet (): Denne Java-metoden returnerer et sett som har kartnøkkelen .

70) Forklar Treemap i Java

TreeMap er en klasse som implementerer Map-grensesnittet LinkedHashMap og HashMap. Den kan også implementere NavigableMap-grensesnittet og utvide klassen AbstractMap.

71) Hva er forskjellen mellom Hashmap og Hashtable?

Hashmap Hashtable
Den er ikke synkronisert. Den er synkronisert.
HashMap tillater en nøkkel som nullverdi. HashTable tillater ikke nullverdier.
Iterator brukes til å krysse HashMap. Enten Iterator eller Enumerator brukes til å krysse en HashTable.
Den kan brukes til både HashTable, HashMap og går raskt. Den kan brukes med HashTable og er feilsikker.
HashMap fungerer raskere enn HashTable. Hashtable er ikke mye raskere sammenlignet med HashMap.

72) Forklar det interne arbeidet til HashSet i Java

HashSet i Java bruker HashMap internt til å lagre elementer. Det kan også lagre unike verdier uten dupliserte verdier.

I Java kan HashSet-utvikleren ha add (E e) -metoden som bare tar elementet som skal legges til som parameter. Den aksepterer ikke nøkkel- og verdiparet.

73) Forklar Big-O-notasjon med et eksempel

Big-O-notasjonen viser ytelsen til en algoritme som antall elementer i ArrayList. En utvikler kan bruke Big-O-notasjon til å velge implementeringen av samlingen. Den er basert på ytelse, tid og minne.

For eksempel er ArrayList get (indeks i) en metode for å utføre en konstant tidsoperasjon. Det avhenger ikke av det totale antallet elementer som er tilgjengelige i listen. Derfor er ytelsen i Big-O notasjon O (1).

74) Forklar beste praksis i Java Collection Framework

De beste metodene i Java Collection Framework er:

  • Velg riktig type samling, avhengig av behovet.
  • Unngå gjenvasking eller endring av størrelse ved å estimere det totale antallet elementer som skal lagres i samlingsklasser.
  • Skriv et Java-program når det gjelder grensesnitt. Dette vil hjelpe utvikleren til å endre implementeringen uten problemer i fremtiden.
  • En utvikler kan bruke Generics for typesikkerhet.
  • Bruk uforanderlige klasser gitt av Java Development Kit. Unngå implementering av like () og hashCode () for tilpassede klasser.
  • En programmerer skal bruke samlingsklassen for algoritmer eller for å få skrivebeskyttede, synkroniserte eller tomme samlinger. Dette vil forbedre kodenes gjenbrukbarhet med lav vedlikeholdbarhet.

75) Forklar forskjellige typer køer i Java

Det er tre typer køer i Java:

  • Prioritetskø: Det er en spesiell type kø der elementene er sortert i henhold til deres naturlige bestilling eller tilpassede komparator.
  • Circular Queue: Det er en type kø der brukeroperasjoner utføres basert på FIFO-metoden. Det siste elementet er koblet til den første posisjonen for å lage en sirkel.
  • Dobbeltkø: En dobbeltkø er en abstrakt datatype som generaliserer en kø. Elementene i denne køen kan legges til eller fjernes fra enten hode eller hale.

76) Hva er forskjellen mellom stack og kø?

Stable
Arbeidsprinsippet til stakken er LIFO. Arbeidsprinsippet for køen er FIFO.
Den ene enden brukes til å utføre innsetting eller sletting av elementer. Den ene enden brukes til å utføre innsetting, og den andre enden brukes til sletting av elementer.
Den bruker en peker. Den bruker to pekere i en enkel kø.
Den har ingen form for variant. Den har varianter som prioritetskø, sirkulær kø, dobbeltkø.
Den er enkel å bruke. Det er ikke lett å bruke.

77) Hva er forskjellen mellom array og stack?

Forskjellen mellom array og stack er:

Array Stable
Det er en samling av elementer som er identifisert av indeksen. Det er en innsamlingsoperasjon som fungerer som operasjons-push og pop.
Den har elementer av datatyper som er like. Den har elementer av datatyper som er forskjellige.
Elementer kan fjernes eller legges til i arrayet ved hjelp av tilfeldig tilgang. Elementer kan fjernes eller legges til en stabel ved bruk av LIFO-operasjon.

78) Definer Iterator ()

Iteratoren () er et grensesnitt som gir metoder for å iterere samlingen. Iterator kan ta plassen til Enumeration i Java. Det lar den som ringer fjerne elementer fra samlingen. Metoden gir en generell måte for traversering ved å bruke elementer i samlingen og implementere iterator designmønster.

79) Hva er de forskjellige måtene å gjenta over en liste?

Java collection Framework programmerer kan gjentas over en liste på to måter: 1) Bruke iterator, og 2) bruke den for hver sløyfe.

80) Hva er fordelene med stabelen?

Fordelene med stabelen er:

  • Det hjelper deg å administrere dataene i en Last In First Out (LIFO) -metode, noe som ikke er mulig med den koblede listen og matrisen.
  • Når en funksjon kalles, lagres de lokale variablene i en bunke, og den ødelegges automatisk når den returneres.
  • En stabel brukes når en variabel ikke brukes utenfor den funksjonen.
  • Den lar deg kontrollere hvordan minne tildeles og fordeles.
  • Stack rydder automatisk opp objektet.
  • Ikke lett ødelagt
  • Variabler kan ikke endres.