Top 80 Java-verzamelingen Interviewvragen & Antwoorden

Anonim

Hier zijn Java Collections-sollicitatievragen voor zowel frissere als ervaren kandidaten om hun droombaan te krijgen.

1) Wat is framework in Java?

Een framework is een populaire en kant-en-klare architectuur die een reeks klassen en interfaces bevat.

2) Wat is het verzamelframework in Java?

Collection Framework is een groep klassen en interfaces die wordt gebruikt om de objecten op te slaan en te beheren. Het biedt verschillende klassen zoals Vector, ArrayList, HashSet, Stack, enz. Het Java Collection-framework kan ook worden gebruikt voor interfaces zoals Queue, Set, List, enz.

3) Leg de Collectieklas uit

java.util.Collections is een klasse die bestaat uit statische methoden die op verzamelingen werken. Het bevat polymorfe algoritmen om te werken met verzamelingen, "wrappers". Deze klasse bevat methoden voor algoritmen, zoals binair sorteren, zoeken, in willekeurige volgorde afspelen, enz.

4) Wat is de hashCode ()?

De hashCode () is een methode die een hashcode van een geheel getal retourneert.

5) Maak onderscheid tussen ArrayList en Vector in het Java-verzamelframework.

ArrayList Vector
ArrayList kan niet worden gesynchroniseerd. Vector kan worden gesynchroniseerd.
Het is geen legacy-klasse. Het is een erfenisklasse.
Het kan zijn grootte vergroten met 50% van de grootte van de array. Het kan de grootte vergroten door de grootte van de array te verdubbelen.
ArrayList is niet thread-safe. Vector is een draadveilig.

6) Wat is ArrayList in Java?

ArrayList is een datastructuur die kan worden uitgerekt om extra elementen in zichzelf op te nemen en terug te krimpen tot een kleiner formaat wanneer elementen worden verwijderd. Het is een zeer belangrijke gegevensstructuur die nuttig is bij het omgaan met het dynamische gedrag van elementen.

7) Maak onderscheid tussen Iterator en ListIterator

Het verschil tussen Iterator en ListIterator is:

Iterator ListIterator
De Iterator kan de array-elementen in voorwaartse richting doorlopen. ListIterator kan de array-elementen zowel in achterwaartse als voorwaartse richting doorlopen.
Het kan worden gebruikt in Wachtrij, Lijst en Set. Het kan worden gebruikt in List.
Het kan alleen een verwijderingsbewerking uitvoeren. Het kan toevoegen, verwijderen en instellen tijdens het doorlopen van de collectie.

8) Wat is het verschil tussen Iterator en Enumeration?

Het verschil tussen Iterator en Enumeration

Iterator Opsomming
De Iterator kan zowel legaten als niet-legacy elementen doorkruisen. Opsomming kan alleen oude elementen doorlopen.
De Iterator is fail-fast. Opsomming is niet snel.
De Iterator is erg traag in vergelijking met Enumeration. Opsomming is snel te vergelijken met Iterator.
De Iterator kan een verwijderingsoperatie uitvoeren terwijl hij door de collectie loopt. De inventarisatie kan alleen een verplaatsing uitvoeren op de verzameling.

9) Definieer BlockingQueue

BlockingQueue is een interface die in Java wordt gebruikt en die de wachtrij kan uitbreiden. Het biedt gelijktijdigheid in verschillende wachtrijbewerkingen zoals ophalen, invoegen, verwijderen, enz.

De wachtrij wacht totdat deze niet leeg is op het moment dat elementen worden opgehaald. BlockingQueue mag geen null-elementen bevatten. De implementatie van deze wachtrij is thread-safe.

De syntaxis van BlockingQueue is:

public interface BlockingQueue extends Queue  

10) Leg de methode override equals () uit

De equals-methode wordt gebruikt om de overeenkomst tussen twee objecten te controleren. Als de programmeur een object wil controleren op basis van de eigenschap, moet dit worden overschreven.

11) Wat is het verschil tussen Comparable en Comparator?

Het verschil tussen Comparable en Comparator is:

Vergelijkbaar Comparator
Comparable biedt de methode CompareTo () om elementen in Java te sorteren. Comparator biedt de methode Compare () om elementen in Java te sorteren.
Een vergelijkbare interface is aanwezig in het pakket java.lang. De vergelijkingsinterface is aanwezig in java. util-pakket.
De logica van het sorteren moet zich in dezelfde klasse bevinden waarvan u het object gaat sorteren. De logica van het sorteren zou in een aparte klasse moeten zitten om verschillende sorteringen te schrijven op basis van verschillende attributen van objecten.
De klasse waarvan u de objecten wilt sorteren, moet de vergelijkbare interface implementeren. Klasse, waarvan u de objecten wilt sorteren, hoeft geen vergelijkingsinterface te implementeren.
Het biedt enkele sorteerreeksen. Het biedt meerdere sorteervolgordes.
Deze methode kan de gegevens sorteren op de natuurlijke sorteervolgorde. Deze methode sorteert de gegevens volgens de aangepaste sorteervolgorde.
Het heeft invloed op de oorspronkelijke klasse. dwz de feitelijke klasse wordt gewijzigd. Het heeft geen invloed op de oorspronkelijke klasse, dwz de werkelijke klasse wordt niet gewijzigd.
Regelmatig geïmplementeerd in de API per kalender, wrapper-klassen, datum en tekenreeks. Het is geïmplementeerd om instanties van klassen van derden te sorteren.
Alle wrapper-klassen en String-klasse implementeren de vergelijkbare interface. De enige geïmplementeerde klassen van Comparator zijn Collator en RuleBasedColator.

12) Leg uit is gelijk aan () met voorbeeld

Equals () verifieert of het nummerobject gelijk is aan het object, dat als argument wordt doorgegeven of niet.

De syntaxis van de methode equals () is:

public boolean equals(Object o) 

Deze methode heeft twee parameters nodig: 1) elk object, 2) retourwaarde. Het retourneert true als het doorgegeven argument niet null is en een object is van een vergelijkbaar type met dezelfde numerieke waarde.

Voorbeeld:

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) Maak een lijst van de voordelen van generieke collectie

De voordelen van het gebruik van de generieke collectie zijn:

  • Als de programmeurs een generieke klasse gebruiken, hebben ze geen typecasting nodig.
  • Het is type-safe en kan worden gecontroleerd op het moment van compilatie.
  • Het biedt de stabiliteit van de code door een bug te detecteren tijdens het compileren.

14) Leg de methode uit om ArrayList naar Array en Array naar ArrayList te converteren

Programmeurs kunnen een Array naar ArrayList converteren met de methode asList () van de klasse Arrays. Het is een statische methode van de klasse Arrays die het List-object accepteert. De syntaxis van de methode asList () is:

Arrays.asList(item) 

Java-programmeurs kunnen ArrayList naar het List-object converteren met behulp van de syntaxis:

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

15) Geef een voorbeeld van ArrayList

Het voorbeeld van reverse ArrayList is:

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) Geef een voorbeeld om een ​​array in dscending volgorde te sorteren

Het voorbeeld van het sorteren van een array in aflopende volgorde is:

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) Leg de basisinterfaces van het Java-verzamelingsraamwerk uit

Het Java-verzamelingsraamwerk is een root van de verzamelinghiërarchie. Het vertegenwoordigt een groep objecten als zijn elementen. De programmeertaal Java biedt geen directe implementatie van een dergelijke interface.

  • Set: Set is een verzameling zonder dubbele elementen. Het gebruikt hashtabel voor het opslaan van elementen.
  • Lijst: lijst is een geordende verzameling die dubbele elementen kan bevatten. Het stelt ontwikkelaars in staat om toegang te krijgen tot alle elementen vanuit de inbox. De lijst is als een array met een dynamische lengte.
  • KAART: Het is een object dat sleutels aan waarden toewijst. Het mag geen dubbele sleutels bevatten. Elke sleutel kan worden toegewezen aan ten minste één waarde.

18) Wat zijn de kenmerken van Java Hashmap?

Kenmerken van Java Hashmap zijn:

  • De waarden kunnen op een kaart worden opgeslagen door een sleutel / waarde-paar te vormen. De waarde kan worden opgehaald met behulp van de sleutel door deze door te geven aan de juiste methode.
  • Als er geen element in de kaart bestaat, zal het een 'NoSuchElementException' genereren.
  • HashMap slaat alleen objectreferenties op. Daarom is het onmogelijk om primitieve datatypes zoals double of int te gebruiken. Gebruik in plaats daarvan de wrapper-klasse (zoals Geheel getal of Dubbel).

19) Wat is een stapel?

Een stapel is een speciaal gebied van het computergeheugen waarin tijdelijke variabelen worden opgeslagen die door een functie zijn gemaakt. In stack worden variabelen gedeclareerd, opgeslagen en geïnitialiseerd tijdens runtime.

20) Wat is een gelinkte lijst?

Een gekoppelde lijst is een gegevensstructuur waarin een verzameling items kan worden opgeslagen. Met andere woorden, gekoppelde lijsten kunnen worden gebruikt om meerdere objecten van hetzelfde type op te slaan. Elke eenheid of element van de lijst wordt een knooppunt genoemd. Een knooppunt in de gekoppelde lijst heeft zijn gegevens en het adres van het volgende knooppunt. Het is als een ketting. Gekoppelde lijsten worden gebruikt om grafieken en bomen te maken.

21) Geef een voorbeeld van ArrayList

Het voorbeeld van ArrayList is:

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) Leg de gekoppelde lijst uit die wordt ondersteund door Java

Twee typen gekoppelde lijsten die door Java worden ondersteund, zijn:

  • Singly Linked lijst: Singly Linked lijst is een soort datastructuur. In een enkelvoudig gekoppelde lijst slaat elk knooppunt in de lijst de inhoud van het knooppunt op en een verwijzing of pointer naar het volgende knooppunt in de lijst. Het slaat geen enkele verwijzing of pointer op naar het vorige knooppunt.
  • Dubbel gelinkte lijsten: Dubbel gelinkte lijsten zijn een speciaal type gelinkte lijst waarin het doorlopen van de data-elementen in beide richtingen kan gebeuren. Dit wordt mogelijk gemaakt door twee links in elk knooppunt te hebben, een die is verbonden met het volgende knooppunt en een andere die verbinding maakt met het vorige knooppunt.

23) Verklaar de methoden die worden geboden door de wachtrij-interface.

Methoden van Java Queue-interface zijn:

Methode Omschrijving
boolean add (object) Voegt een gespecificeerd element in de wachtrij in. Het geeft true terug voor het geval het een succes is.
booleaanse aanbieding (object) Deze methode wordt gebruikt om het element in de wachtrij in te voegen.
Object verwijderen () Het haalt de wachtrij op en verwijdert deze.
Object poll ()
Object poll () Het haalt de wachtrij op en verwijdert deze, of retourneert null als deze leeg is.
Objectelement () Haalt de gegevens op uit de wachtrij, maar verwijdert de kop niet.
Object bekijken () Haalt de gegevens op uit de wachtrij, maar verwijdert de kop ervan niet, of als de wachtrij leeg is, wordt null opgehaald.

24) Noem de methoden die door de Stack-klasse worden geboden

Belangrijke methoden die door de Stack-klasse worden geboden, zijn:

  • push (): Duw het item in de stapel.
  • empty (): Deze methode bepaalt of de stapel leeg is of niet.
  • pop (): deze Java-verzamelframeworkmethode verwijdert het object uit de stapel.
  • search (): deze methode zoekt naar items in de stapel.
  • peek (): deze Java-methode kijkt naar het stack-object zonder het te verwijderen.

25) Definieer emptySet () in het Java-verzamelingsraamwerk

Methode emptySet () die de lege onveranderlijke set retourneert telkens wanneer programmeurs null-elementen proberen te verwijderen. De set die wordt geretourneerd door emptySet () kan worden geserialiseerd. De syntaxis van deze methode is:

public static final Set emptySet ()

26) Maak onderscheid tussen collectie en collecties

Het verschil tussen collectie en collecties zijn:

Verzameling Collecties
De collectie is een interface. Collecties is een klasse.
Het vertegenwoordigt een groep objecten als een enkele entiteit. Het definieert verschillende hulpprogramma-methoden voor verzamelingsobjecten.
De collectie is de root-interface van het Java Collection-framework. Verzamelingen is een algemene hulpprogramma-klasse.
Deze interface wordt gebruikt om de datastructuren van de collectie af te leiden. Deze klasse bevat statische methoden om de gegevensstructuur te manipuleren.

27) LinkedHashSet definiëren in het Java Collection-framework?

LinkedHashSet is een subklasse van de klasse genaamd HashSet en implementeert de set-interface. Het is een goed geordende versie van HashSet die een dubbel gekoppelde lijst bijhoudt voor alle elementen.

28) Wat is het verschil tussen failfast en failsafe?

Failfast Failsafe
Het staat geen wijziging van de collectie toe tijdens het itereren. Het staat wijziging van de collectie toe tijdens het itereren.
Het kan ConcurrentModificationException genereren Het kan geen uitzondering opleveren.
Het gebruikt de originele collectie om de elementen te doorkruisen. Het gebruikt een origineel exemplaar van de collectie om de elementen te doorkruisen.
Er is geen extra geheugen vereist. Er is extra geheugen nodig.

29) Lijst met verzamelingsweergaven van een kaartinterface

Verzamelingsweergaven van de kaartinterface zijn: 1) weergave sleutelset, 2) weergave waardenset en 3) weergave invoerset.

30) Wat zijn de voordelen van het Collection Framework in Java?

De voordelen van Collection Framework in Java zijn:

  • Het Java-verzamelingsraamwerk biedt zeer efficiënte en effectieve gegevensstructuren die de nauwkeurigheid en snelheid van het programma verbeteren.
  • Het programma dat is ontwikkeld met het Java-verzamelframework is gemakkelijk te onderhouden.
  • Een ontwikkelaar kan klassen combineren met andere typen, waardoor de herbruikbaarheid van code toeneemt.
  • Het Java-verzamelingsraamwerk stelt programmeurs in staat om de primitieve verzamelingstypen naar eigen inzicht aan te passen.

31) Wat is een goede manier om de collectieobjecten in Java te sorteren?

Een goede manier om Java-verzamelingsobjecten te sorteren, is het gebruik van vergelijkbare en vergelijkende interfaces. Een ontwikkelaar kan Collections.sort () gebruiken, de elementen worden gesorteerd op volgorde van vermelding in CompareTo ().

Wanneer een ontwikkelaar Collections, sort (Comparator) gebruikt, sorteert het de objecten afhankelijk van Compare () van de Comparator-interface.

32) Leg Vector in Java uit

De vector is hetzelfde als een array. Het heeft componenten die toegankelijk zijn met behulp van een indexwaarde. Vectoren kunnen een verouderde methode bevatten die geen deel uitmaakt van het verzamelingsraamwerk.

33) Wat is het verschil tussen Set en Map?

Set Kaart
Set behoort tot pakket-java.util. De kaart hoort bij pakket- java.util.
Het kan de collectie-interface uitbreiden. Het breidt de collectie-interface niet uit.
Het staat geen dubbele waarden toe. Het staat dubbele waarden toe.
Set kan slechts één null-waarde sorteren. De kaart kan meerdere null-waarden sorteren.

34) Definieer woordenboekklasse

De Dictionary-klasse is een Java-klasse die sleutel / waarde-paren kan opslaan.

35) Definieer EnumSet

java.util.EnumSet is een set-implementatie die kan worden gebruikt met enum-typen. EnumSet met alle elementen moet afkomstig zijn van één enum-type dat expliciet of impliciet is opgegeven. Het is niet gesynchroniseerd en ook null-sleutels zijn niet toegestaan. EnumSet biedt methoden zoals EnumSetof (E eerst, E.

… Rest), complementOf (EnumSet s), en copyOf (Collectie c).

36) Wat zijn de twee manieren om duplicaten van ArrayList te verwijderen?

Er zijn twee manieren om duplicaten uit ArrayList te verwijderen:

  • HashSet: ontwikkelaar kan HashSet gebruiken om het dubbele element uit de ArrayList te verwijderen. Het nadeel is dat het de invoegvolgorde niet kan behouden.
  • LinkedHashSet: ontwikkelaars kunnen ook de volgorde van invoeging behouden door LinkedHashSet te gebruiken in plaats van HashSet.

37) Wat is IdentityHashMap?

IdentityHashMap is een klasse die Serializable, Clonable interfaces, Map implementeert en de klasse AbstractMap uitbreidt. Het is ontworpen voor het geval waarin er behoefte is aan semantiek van referentiegelijkheid.

38) Wat is WeakHashMap?

WeakHashMap is een implementatie van de Java Map. Het wordt gebruikt om zwakke verwijzingen naar de sleutels op te slaan. Door te sorteren met behulp van deze kaart, wordt een sleutel / waarde-paar verzameld als afval. Buiten WeakHashMap wordt niet naar de sleutel verwezen.

39) Wat zijn de methoden om het verzamelen van schroefdraadveilig te maken?

De methoden om verzamelingsdraad veilig te maken zijn:

  • Collections.synchronizedList (lijst);
  • Collections.synchronizedMap (kaart);
  • Collections.synchronizedSet (set);

40) Leg UnsupportedOperationException uit

UnsupportedOperationException is een uitzondering die wordt gegenereerd op methoden die niet worden ondersteund door het werkelijke type verzameling.

De ontwikkelaar maakt bijvoorbeeld een alleen-lezenlijst met behulp van "Collections.unmodifiableList (lijst)" en roept de methode call (), add () of remove () aan. Het zou duidelijk UnsupportedOperationException moeten genereren.

41) Noem de collectieklassen die willekeurige elementen toegang geven tot de elementen

Collectieklassen die willekeurige elementen toegang geven tot de elementen zijn: 1) ArrayList, 2) HashMap, 3) TreeMap en 4) Hashtable.

42) Leg het verschil uit tussen Queue en Deque.

Wachtrij Deque
Het wordt een wachtrij met één einde genoemd Het wordt een dubbele wachtrij genoemd
Elementen in de wachtrij worden aan één kant toegevoegd of verwijderd Elementen in de wachtrij worden aan beide uiteinden toegevoegd en kunnen aan beide uiteinden worden toegevoegd en verwijderd
Het is minder veelzijdig. Het is veelzijdiger.

43) Noem de implementerende List en Set-interface

Klasse die List-interface implementeert: 1) ArrayList, 2) Vector en 3) LinkedList.

Klasse die Set-interface implementeert: 1) HashSet en 2) TreeSet.

44) Leg het ontwerppatroon uit dat door Iterator wordt gevolgd

De iterator volgt de details van het iteratorontwerppatroon. Het biedt ontwikkelaars de mogelijkheid om door de objectencollecties te navigeren met behulp van een gemeenschappelijke interface zonder de implementatie ervan te kennen.

45) Wat is de peek () van de wachtrij-interface?

Peek () is een methode van wachtrij-interface. Het haalt alle elementen op, maar verwijdert niet de wachtrij. Als de wachtrij leeg is, retourneert deze methode null.

46) Wat is CopyOnWriteArrayList?

CopyOnWriteArrayList is een variant van ArrayList waarin bewerkingen zoals add en set worden geïmplementeerd door een kopie van de array te maken. Het is een thread-safe, en daardoor gooit het geen ConcurrentModificationException. Deze ArrayLists staan ​​alle elementen toe, inclusief null.

47) Maak onderscheid tussen ArrayList en LinkedList

Het verschil tussen ArrayList en LinkedList is:

ArrayList LinkedList
Het maakt gebruik van een dynamische array. Het maakt gebruik van een dubbel gelinkte lijst.
ArrayList heeft niet de voorkeur voor manipulatie. LinkedList heeft de voorkeur voor manipulatie.
ArrayList biedt willekeurige toegang. LinkedList biedt geen willekeurige toegang.
ArrayList slaat alleen objecten op, waardoor het minder geheugen kost LinkedList slaat zowel object als adresobject op; daarom kost het meer geheugenruimte.

48) Leg de methoden van de iteratorinterface uit

Methoden van iterator-interface zijn:

Methode Omschrijving
openbare boolean hasNext () Het geeft true terug in de iterator heeft elementen; anders retourneert het false.
openbaar object volgende () Deze methode retourneert het element en verplaatst de aanwijzer naar de volgende waarde.
public void remove () Deze Java-methode kan de laatste elementen verwijderen die door de iterator zijn geretourneerd. Public void remove () wordt minder gebruikt.

49) Wat zijn de methoden van de klasse HashSet?

Methoden van de HashSet-klasse zijn:

Methoden Omschrijving
boolean add (Object o) Deze methode voegt het vermelding element toe aan deze set als deze nog niet aanwezig is.
boolean bevat (Object o): Het retourneert true als de set het opgegeven element bevat.
leegte duidelijk (): Deze methode verwijdert ingestelde elementen.
boolean isEmpty (): Het geeft true terug in het geval, de set heeft geen elementen.
boolean remove (Object o): Het verwijdert het opgegeven element uit de set.
object kloon (): Deze methode retourneert een kopie van de HashSet-instantie: de elementen zelf worden niet gekloond.
iterator iterator () Het geeft een iterator terug over de elementen in deze set.
int maat (): Het geeft het aantal elementen terug dat beschikbaar is in de set.

50) Wat zijn de methoden van de Java TreeSet-klasse?

De methoden van de Java TreeSet-klasse zijn:

Methoden Beschrijvingen
boolean addAll (verzameling c) Voeg alle elementen in de opgegeven verzameling toe aan deze set.
boolean bevat (Object o) Geeft true terug als de set het vermelding-element bevat.
boolean isEmpty () Deze Java-methode retourneert true als deze set geen elementen bevat.
boolean remove (Object o) Verwijder het gespecificeerde element uit de set.
void add (Object o) Het voegt het opgegeven element toe aan de set.
leegte duidelijk () Deze Java-methode verwijdert alle elementen uit de set.

51) Leg Linked HashSet uit

Java LinkedHashSet-klasse is een gekoppelde lijst en hash-tabelimplementatie van de Set-interface. Het bevat unieke elementen, hetzelfde als een HashSet. Linked HashSet in Java biedt ook optionele set-bewerkingen die de volgorde van invoeging kunnen behouden.

52) Wat zijn de belangrijkste methoden die in een gelinkte lijst worden gebruikt?

De belangrijkste methoden die in de gekoppelde lijst worden gebruikt, zijn:

Methode Omschrijving
boolean add (Object o) Het wordt gebruikt om het opgegeven element aan het einde van de vector toe te voegen.
boolean bevat (Object o) Het is een methode die true retourneert als deze lijst het opgegeven element bevat.
void add (int index, Object element) Voegt het element in bij het opgegeven element in de vector.
void addFirst (Object o) Het wordt gebruikt om het gegeven element aan het begin in te voegen.
void addLast (Object o) Het wordt gebruikt om het gegeven element aan het einde toe te voegen.
Int maat () Deze methode kan worden gebruikt om het totale aantal elementen in een lijst te retourneren.
boolean remove (Object o) Het kan het eerste exemplaar van het opgegeven element uit deze lijst verwijderen.
int indexOf (objectelement) Deze Java-methode retourneert de index met de eerste keer dat het vermelding-element in deze lijst voorkomt, of -1.
int lastIndexOf (Object-element) Het is een Java-methode die de index retourneert met het laatste exemplaar van het opgegeven element in deze lijst, of -1.

53) Maak een lijst van verschillende klassen die in sets beschikbaar zijn

Verschillende klassen die beschikbaar zijn in sets zijn: HashSet, TreeSetand en LinkedHashSet.

54) Lijst met methoden die beschikbaar zijn in de Java Queue-interface

  • boolean add (object)
  • booleaanse aanbieding (object)
  • object verwijderen ()
  • object poll ()
  • objectelement ()
  • object gluren ()

55) Maak onderscheid tussen lijst en set.

Lijst Set
Een geordende verzameling elementen Een ongeordende verzameling elementen
Behoudt de plaatsingsvolgorde Behoudt de invoegvolgorde niet
Dubbele waarden zijn toegestaan Dubbele waarden zijn niet toegestaan
Elk aantal null-waarden kan worden opgeslagen Er kan slechts één null-waarde worden opgeslagen
ListIterator kan worden gebruikt om de lijst in elke richting te doorlopen ListIterator kan niet worden gebruikt om door een set te lopen
Bevat een oude klasse met de naam vector Bevat geen oude klasse

56) Leg voor elke lus een voorbeeld uit

For-Each Loop is een andere vorm van for-loop die wordt gebruikt om de array te doorlopen. Het vermindert de code aanzienlijk, en er is geen gebruik van de index of liever de teller in de lus.

Voorbeeld van voor elke lus:

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) Leg de diamantoperator uit

Diamond-operator stelt de compiler in staat om de type-argumenten van generieke klasse te verzamelen. In Java SE kan de ontwikkelaar de geparametreerde constructor vervangen door lege parametersets (<>) die bekend staan ​​als diamantoperator.

58) Leg de randomaccess-interface uit

De RandomAccess-interface wordt gebruikt door List-implementaties om aan te geven dat ze snel ondersteunen.

59) Geef de verzamelingsklassen een naam die de interface voor willekeurige toegang implementeren

Het Java.util-pakket heeft klassen die een willekeurige toegangsinterface kunnen implementeren, zijn: CopyOnWriteArrayList, Stack, ArrayList en Vector.

60) Hoe lid worden van meerdere ArrayLists?

De lijst biedt een addall () -methode voor meerdere ArrayList in Java.

Beschouw bijvoorbeeld twee lijsten 1) areaList en 2) secondAreaList. Een ontwikkelaar kan zich bij hen aansluiten met addall (), zoals:

areaList.addAll (secondAreaList);

61) Leg de deque-interface uit

Java.util.Deque is Java, een interface die de wachtrij-interface uitbreidt. Het biedt ondersteuning voor het invoegen en verwijderen van elementen aan beide uiteinden. Deze wachtrij wordt ook wel een dubbele wachtrij genoemd.

62) Leg Linkedhashmap uit

LinkedHashMap is de implementatie van de kaartinterface. Het kan ook de klasse HashMap uitbreiden. Daarom stelt LinkedHashMap, net als HashMap, Java-ontwikkelaars in staat om één null-sleutel en meer dan één null-waarde toe te staan.

63) Leg de methoden uit om elementen uit ArrayList te verwijderen

De methoden om elementen uit ArrayList te verwijderen zijn:

Methode Omschrijving
Doorzichtig() Deze methode verwijdert de elementen uit ArrayList.
verwijderen (int index) Deze methode van ArrayList kan het element op een bepaalde positie verwijderen.
verwijderen (Object o) Het kan de eerste vermelding van het vermelding-element uit de ArrayList verwijderen.
Verwijder alles() Het kan de lijst met elementen uit een bepaalde verzameling verwijderen.
removeIf (Predicaat filter) Deze methode verwijdert elementen die voldoen aan de vermelding van een predikaat.

64) Leg de kaart uit. vermelding in kaart

Map.entry is een Java-interface van java.util. Het heeft een geneste interface in Map. Deze interface moet worden gekwalificeerd door de naam van de klasse of interface waarvan het lid is. Daarom is het gekwalificeerd als een kaart. Binnenkomst. Het vertegenwoordigt een sleutel- en waardepaar dat een element van een kaart kan vormen.

Deze methode retourneert een weergave van de collectie. Beschouw cityMap bijvoorbeeld als een kaart. De ontwikkelaar kan entrySet () gebruiken om de ingestelde weergave te krijgen van een kaart met een element Map.Entry. De programmeur kan ook getKey () en getValue () van de Map.Entry gebruiken om het sleutelpaar en de waarde van de kaart op te halen.

65) Welke methode wordt gebruikt om een ​​array in oplopende volgorde te sorteren?

De Java-verzamelingsframework-methode Collections.sort () wordt gebruikt om een ​​array in oplopende volgorde te sorteren.

66) Hoe meet je de prestaties van een ArrayList?

De prestaties van ArrayList kunnen worden gemeten door:

  • Een element toevoegen: ontwikkelaar kan een element aan het einde van ArrayList toevoegen met de methode add (E e). Het is O (1). In het ergste scenario kan het naar O (n) gaan. Dit kan gebeuren als de ontwikkelaar meer elementen toevoegt dan de arraycapaciteit.
  • Een element ophalen : - Ontwikkelaar heeft toegang tot de array-index met get (int index). De prestatie kan in dit geval worden gemeten met ArrayList get () is O (1).
  • Een element verwijderen: In het geval dat, als de ontwikkelaars een element verwijderen met behulp van de remove (int index), dan kan de prestatie van ArrayList worden berekend met behulp van de genoemde remove (int index) bewerking is de O (n - index) methode.

67) Leg de LinkedList-klas uit

De klasse LinkedList in Java implementeert Deque en List met behulp van een dubbel gelinkte lijst. Er is een privéklasse-knooppunt in een dubbel gekoppelde lijst die de structuur ervan biedt. Het heeft ook een itemvariabele voor het bevatten van de waarde en verwijzing naar de Node-klasse. Dit kan worden gebruikt om de volgende en vorige knooppunten te verbinden.

68) Geef een voorbeeld van Hashmap

Het voorbeeld van Hashmap is:

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) Hoe kaart herhalen?

De ontwikkelaar kan de kaart niet rechtstreeks herhalen, maar deze interface heeft twee methoden die een kaartweergave geven. Deze methoden zijn:

  • Set > entrySet (): Het is een methode die een set retourneert waarvan de items op de kaart worden vermeld. Deze vermeldingen zijn over het algemeen bezwaren, die het type Map hebben. Binnenkomst.
  • Set keySet (): deze Java-methode retourneert een set die de map key heeft.

70) Leg Treemap in Java uit

TreeMap is een klasse die de kaartinterface LinkedHashMap en HashMap implementeert. Het kan ook de NavigableMap-interface implementeren en de klasse AbstractMap uitbreiden.

71) Wat is het verschil tussen Hashmap en Hashtable?

Hash kaart Hashtable
Het is niet gesynchroniseerd. Het is gesynchroniseerd.
HashMap staat één sleutel toe als een nulwaarde. HashTable staat geen null-waarden toe.
Iterator wordt gebruikt om HashMap te doorlopen. Ofwel Iterator of Enumerator wordt gebruikt voor het doorlopen van een HashTable.
Het kan worden gebruikt voor zowel HashTable als HashMap en is fail-fast. Het kan worden gebruikt met HashTable en is fail-safe.
HashMap presteert sneller dan de HashTable. Hashtable is niet veel sneller in vergelijking met HashMap.

72) Leg de interne werking van HashSet in Java uit

HashSet in Java gebruikt intern HashMap om elementen op te slaan. Het kan ook unieke waarden opslaan zonder dubbele waarden.

In Java kan de HashSet-ontwikkelaar een add (E e) -methode hebben waarbij alleen het element nodig is om als parameter toe te voegen. Het accepteert het sleutel- en waardepaar niet.

73) Leg de Big-O-notatie uit met een voorbeeld

De Big-O-notatie geeft de prestaties van een algoritme weer als het aantal elementen in ArrayList. Een ontwikkelaar kan de Big-O-notatie gebruiken om de collectie-implementatie te kiezen. Het is gebaseerd op prestaties, tijd en geheugen.

ArrayList get (index i) is bijvoorbeeld een methode om een ​​bewerking met constante tijd uit te voeren. Het is niet afhankelijk van het totale aantal elementen dat in de lijst beschikbaar is. Daarom is de uitvoering in Big-O-notatie O (1).

74) Verklaar de best practices in Java Collection Framework

De best practices in Java Collection Framework zijn:

  • Kies het juiste type collectie, afhankelijk van de behoefte.
  • Voorkom opnieuw hashen of vergroten of verkleinen door het totale aantal elementen te schatten dat in verzamelingsklassen moet worden opgeslagen.
  • Schrijf een Java-programma in termen van interfaces. Dit zal de ontwikkelaar helpen om zijn implementatie in de toekomst moeiteloos te wijzigen.
  • Een ontwikkelaar kan Generics gebruiken voor typeveiligheid.
  • Gebruik onveranderlijke klassen die worden gegeven door de Java Development Kit. Vermijd implementatie van equals () en hashCode () voor aangepaste klassen.
  • Een programmeur moet de klasse Collecties gebruiken voor algoritmen of om alleen-lezen, gesynchroniseerde of lege collecties te krijgen. Dit verbetert de herbruikbaarheid van code met een lage onderhoudbaarheid.

75) Leg verschillende soorten wachtrijen in Java uit

Er zijn drie soorten wachtrijen in Java:

  • Prioriteitswachtrij: dit is een speciaal type wachtrij waarin elementen worden gesorteerd volgens hun natuurlijke volgorde of aangepaste vergelijker.
  • Circulaire wachtrij: dit is een type wachtrij waarin gebruikersbewerkingen worden uitgevoerd op basis van de FIFO-methode. Het laatste element wordt met de eerste positie verbonden om een ​​cirkel te maken.
  • Wachtrij met twee uiteinden: een wachtrij met twee uiteinden is een abstract gegevenstype dat een wachtrij generaliseert. De elementen in deze wachtrij kunnen aan kop of staart worden toegevoegd of verwijderd.

76) Wat is het verschil tussen stapel en wachtrij?

Stapel Wachtrij
Het werkingsprincipe van de stapel is LIFO. Werkingsprincipe van wachtrij is FIFO.
Het ene uiteinde wordt gebruikt om elementen in te voegen of te verwijderen. Het ene uiteinde wordt gebruikt om invoeging uit te voeren en een ander uiteinde wordt gebruikt voor het verwijderen van elementen.
Het gebruikt één aanwijzer. Het gebruikt twee verwijzingen in een eenvoudige wachtrij.
Het heeft geen enkele variant. Het heeft varianten zoals prioriteitswachtrij, circulaire wachtrij, dubbel beëindigde wachtrij.
Het is gemakkelijk te gebruiken. Het is niet gemakkelijk te gebruiken.

77) Wat is het verschil tussen array en stack?

Het verschil tussen array en stack is:

Array Stapel
Het is een verzameling elementen die worden geïdentificeerd door de index. Het is een verzameloperatie die dient als push en pop operaties.
Het heeft elementen van gegevenstypen die hetzelfde zijn. Het heeft een aantal verschillende gegevenstypen.
Elementen kunnen worden verwijderd of toegevoegd aan de array met behulp van willekeurige toegang. Elementen kunnen worden verwijderd of toegevoegd aan een stapel met behulp van de LIFO-bewerking.

78) Definieer Iterator ()

De Iterator () is een interface die methoden biedt om de verzameling te herhalen. Iterator kan de plaats van Enumeration in Java innemen. Hiermee kan de beller elementen uit de verzameling verwijderen. De methode biedt een generieke manier voor doorlopen met behulp van elementen van de collectie en het implementeren van een iteratorontwerppatroon.

79) Wat zijn de verschillende manieren om een ​​lijst te herhalen?

De Java Collection Framework-programmeur kan een lijst op twee manieren herhalen: 1) Met iterator en 2) voor elke lus.

80) Wat zijn de voordelen van de stapel?

De voordelen van de stapel zijn:

  • Het helpt u om de gegevens te beheren in een Last In First Out (LIFO) -methode, wat niet mogelijk is met de gekoppelde lijst en array.
  • Wanneer een functie wordt aangeroepen, worden de lokale variabelen opgeslagen in een stapel en wordt deze automatisch vernietigd zodra ze worden geretourneerd.
  • Een stapel wordt gebruikt als een variabele niet buiten die functie wordt gebruikt.
  • Hiermee kunt u bepalen hoe geheugen wordt toegewezen en ongedaan gemaakt.
  • Stack ruimt het object automatisch op.
  • Niet gemakkelijk beschadigd
  • Variabelen kunnen niet worden vergroot of verkleind.